Better error handling; commentary / todos
Tests / specs - complete impl phase 1