full rewrite pretty much
Ready for initial release