Function for automatically generating a unique ID from first/last name

Generates names like last.first or last.first.1 if last.first is taken.
Converts to ascii and drops unicode so people with accents/umlauts could
see some interesting results.

Names that are entirely unicode are not supported.
Make roster.db for unit tests on Travis.
Fix #43.

This makes the SQL code a lot more repetitive, but it's just for the
default fixture data, so hopefully it's not that big a deal. And now
it should work on any version of sqlite3 without throwing a syntax
error.
Merge branch 'unique-ids' of github.com:jiffyclub/admintool into jiffyclub-unique-ids
Properly setup/teardown a roster.test.db during test runs.

I had to introduce a RUNNING_TESTS boolean into the db.py code
that I'm not terribly proud of, but I'm not sure what a better
solution is.

db.py also needs to use a NullPool when running tests because
of http://stackoverflow.com/a/6135064.

Also, I changed roster.unique_name_id to have a session object
passed into it, as keeping the lifecycle of a session separate and
external from functions that use it is apparently a best practice with
SQLAlchemy.
Merge pull request #44 from toolness/master

Add a function for automatically generating a unique ID from first/last name with proper setup/teardown of db