init checkin of alembic scripts to add api_key table
added script to upgrade api_key to 40 character wide table
updated testcases to stuff a ApiKey prior to running tests that
assume the key will be valid
check that unknown api keys are not logged to heka
added some docs on what to do the first time you use alembic
added DDL scripts for each version so that code review is simpler
moved table creation code into DBIsolation.setup_engine instead of in the main ichnaea.app code
dropped the 'create' argument to the Database constructor
added kwargs to force innodb and utf8 options on the api_key table
Update mapbox + leaflet-hash JS libraries.

Also allow a couple more zoom levels of the base tile layer, to make
it easier to see street details.
Update npm dependencies, install new cleancss and minimize base.css
Add an anchor per nickname to the leaderboard to allow direct lookups.

For example https://location.services.mozilla.com/leaders#hannosch
test cleanup
Merge remote-tracking branch 'crankycoder/features/177-alembic'
Include and pin alembic dependencies
flake8 fixes for alembic/env.py
Remove `create_testdb` script, as it doesn't do anything anymore.

Schema creation inside tests happens via the setup_engine call inside
the DBIsolation class.
Move creation of the normal DB into mysql makefile section
Drop the SQLSOCKET option, and instead require MySQL to run on default port.

This was only used for local development, when MySQL was configured to run
with networking disabled (for example via macports).
Avoid travis failure while calling the mysql make step a second time