Implemented FlySystem for FileSystem abstraction

Solves #41

I wasn't exactly sure if this is the best method or not, but it works. Basically I took out the FileStorage interface and replaced it with FlySystem.