Made Base abstract and added half-concrete DocumentBase and EdgeBase to be able to create both, Documents and Edges, via the gem