Issue #29 Some initial review

I still need to add JavaDoc and there are probably loose ends here and there.
But I'd appreciate some initial feedback here