take full db, pass sub-interface to sub-handlers