Search filters now apply to UTF grid as well as tiles

Previously we had an OpenLayers subclass of "Layer.XYZ" with the filtering logic.
I couldn't see how to make a similar subclass of "Layer.UTFGrid" without duplicating code,
so instead we apply the new function makeFilterableLayer to both XYZ and UTFGrid layers.
It is conventional in node-style modules to drop the '.js' in require statements.
Merge pull request #125 from RickMohr/filter-utf-grid

Search filters now apply to UTF grid as well as tiles
Add dependencies and python class to model spec
Make fixture loading more DRY
Create new primary keys while preserving relations

Make iterating over hashes more DRY
Fix pep8 lint
Merge pull request #126 from steventlamb/topic/improve_migrator

Topic/improve migrator
Create a system user and use it for creating users

Since only the system itself creates, updates and deletes user this
commit updates the user model to automatically provide a system user
when saving objects.

It also provides a management command to create a new system user

The default system user is set to '-1', does not belong to any
instances, and has its login disabled.
intermd cmt
Merge pull request #129 from ahinz/topic/system-user

Create a system user and use it for creating users
Prevent usernames with spaces. Fixes #124.
Merge pull request #130 from ahinz/fix/124/prevent-usernames-with-spaces

Prevent usernames with spaces. Fixes 124.
Restrict tree plot field to plots on same instance

Fixes Github Issue #16

Fix two tests that were either doing this, or were looking
for an exception that was occuring after the ValidationError.
Fixup PEP8 and jshint errors
Removed SASS, added some fonts, cleaned up the base template
Pass args instead of closures to assertRaises
Fix inaccurate documentation
Merge pull request #131 from steventlamb/bug/tree_plot_instance_save

Restrict tree plot field to plots on same instance
Responsive tweaks for tablet viewing
Created FAQ template