Swapped out zepto.js for jQuery

The only reason I wasn't using jQuery is because I'm a stubborn jerk.
Someone finally managed to convince me that jQuery 2.0 is better than
zepto.js, so.
Optimised general render code

It now only recalculates CSS positioning when World.renderGrid()
actually renders something.
Started work on making the world format better
Merge branch 'master' into grid-format
Reworked all world parsing code

There's still a lot of work to be done, but it's now at a functional
state so it can be merged back into master. Things are in place for
three-dimensionality to work, we just need to work on actually being
able to RENDER it.
jQuery is a dick.

Bloody thing added a tiny bit of imprecision to render()'s
player.position(), so there was a faint grid to everything.
Expanded usage of JSHint

Made .jshintrc a lot stricter, whilst also telling it about how World is
defined in one file and used in another.
Fixed up some more JSHint stuff

Using window.requestAnimationFrame() instead of just
requestAnimationFrame() and also added Mousetrap to JSHint's list of
predefined variables.
More work on adding a Z axis.

Also changed world parsing to make sure things outside the grid don't
get in.
Revamped movement code.
Reworked most of how world formats are saved

Also reformatted long if statements, I think it looks better this way.