Initial commit

Mostly project skeleton stuff, plus a nice README
Initial implementation

Works when tested programmatically
Add CLI