Move viewport functions to their own file
Add jsvalidate to grunt build process
Refactor how viewport scroll and scale work

- Just sets a value on the viewport, and triggers "InvalidateViewport"
- Rendering code takes care of applying the correct transforms
- Insert a "PostRender" event to allow cleanup after rendering
Fix mistake in filtered map.search results
Merge pull request #526 from starwed/jsval

Add jsvalidate to grunt build process
Merge pull request #525 from starwed/viewport-cleaner

Viewport refactoring (round 1)
small grunt fixes

The grunt-generated banner makes it unnecessary to include license.txt.

(Before this change, the non-minified file has essentially the same
banner twice.)

Change craftyengine.com to craftyjs.com, which seems to be the canonical
address.
Merge pull request #527 from sbyrnes321/develop

small grunt fixes
Customizable game loop

This patch reworks the game loop to allow control over its behavior.  It can now be set to three modes, which control what dt is passed to each frame, as well as how often frames are called.

* "fixed", which is the existing behavior.  Each frame processes the same amount of time, and as many frames as necessary are processed to reach the target rate.
* "variable", which processes a single frame per render.  This frame is handed the total time since the last frame, up to some maximum value.
* "semifixed", which takes the total time since the last step, and splits it evenly between as many frames are necessary to avoid exceeding some maximum timestep.

It also cleans up how the game loop and Crafty.timer are actually implemented, moving a bunch of internal variables into the scope of Crafty.timer.
Merge pull request #528 from starwed/step-control

Customizable game loop
grunt should create API directory if it doesn't already exist

Fixes issue #532
Merge pull request #533 from sbyrnes321/develop

grunt should create API directory if it doesn't already exist
Removed dead links from README.md
Fixed #534 making the api template use jekyll template