use an actor for db access

for now the long-lived actor (supervised by the actor system's guardian)
will perform the queries, but eventually it will supervise a router system
of children each with their own db connection.

there are still some type issues because i don't understand variance well
enough yet but it seems okay for now.