Test all types (some failing)
Fix most tests
Implement toJson, use auto-tests on it