Complete Rework

Deleted everything and started from scratch. At this point this library
is pretty much an identical reimplementation of Firefly. More features
will be added soon.