Added initial commit of Database interface, it is not fully working yet.