grab assert_close from loom, and fill out more specializations

this allows test_protobuf to assert for actual load/dump correctness,
instead of just checking for runtime crashes