Support different dialects in the Genome initializer

Prior to this patch, Genome defaulted to SQLalchemy dialect defaults when connecting to a database: this meant that MySQLdb was used.
MySQLdb has no Python 3 support, and other alternatives are available, so as a first step this artificial limitation was removed.

Fixes issue #13.
Fix keyword arguments
Fix query so that URLs like mysql:// still work
Switch to string formatting to prevent excape issues
Use match() instead of findall()
update repr and add test