Integrated BufferManager into the SegmentManager. The BufferManager now takes care of initializing the database, if none exists. Makefiles updated so as to reflect the project directory structure