Scripted sequence support

Support is now added for in-game cutscenes (scripted sequences) as a
cutscene element.
Improved timing system

In the past, just adding 1 to any given clock at the end of each frame was
enough. Since then, requestAnimationFrame has introduced a potentially
variable framerate, and clocks must use the actual timestamp to correctly
update. Updating clocks at the end of each frame, though, ensured that they
were always one frame behind, which could cause problems. Now, all clocks
are updated at the start of each frame.
Move map collision data

Collision data in a tilemap (whether a tile is a wall or not) used to be
stored by changing the sign of a tile reference in the tilegraph to positive
or negative. This has been separated and moved. Rather than the collision
data being associated with the tile graph, it is now associated with the
tileset, which saves space and creates less room for bugs. Also, collision
with a tile is now represented by a number, rather than a sign, which makes
it possible to have more than two kinds of collision.