Use WASD to move, or arrow keys. Figure out what's going on. Smile widely, then press See Inside. Look at the comments and the code, understand it. Then remix and either improve this engine or use it to make a game. And finally, have fun.
Bugs: When moving towards and impacting an Object, sometimes touchingblack? becomes 1 without a rebound, enabling the Player to move through the Objects. Update: Well that took some adjustment, but I partially fixed the bug.