Broke out cardDB backend into separate component

For the good of all of us, except the ones who are dead.