Adds database abstraction and mongo layer