Fix bugs, add toJSON()
0.0.4