Only enough to see it would be easier to write my own. On reflection my `isEqual` is about 100x more likely to have bugs than DeepEqual, so here's some more research:

When `reflect.DeepEqual` is called with numbers, they're handled by the `default` case of the type switch (line 126 [here](http://golang.org/src/pkg/reflect/deepequal.go)).

My newb attack plan: try copying DeepEqual as a whole into our code. Then enter a new `json.Number` case right before `default`. Worth a shot?