attach session instead of database to request and ensure proper session close
simplify table binding/creation
started adding basic db isolation/cleanup to tests
use per-test database session
rewrite test to avoid multiple app request / db session interaction weirdness
use sqlalchemy declarative base constructor and cut down line noise