Merge and Interface refactoring
Modified all the tests to reflect the new interface. Also refactored the EventableFilesystem to be an extension instead of a wrapper.