refactor tests to provide more structure
Merge remote-tracking branch 'origin/master' into tests
test both `decode` and `decode!`
test `encode` and `encode!`, break out record tests into submodule
properly handle proplists with atom OR bitstring keys
add tests for `{ :error, :badarg }` and `ArgumentError`
add `is_json?` and `is_term?` tests
fix incomplete returns from `is_json?`