Added and used datum_t::empty_object and empty_array.
Removed more use of partially initialized datum_t values.
Used std::move with datum_object_builder_t::finish appropriately.
Renamed finish to to_counted, Removed duplicate code in table_t::make_error_datum.
Added an important RSI comment telling me to check a thing...
Switched some raw std::vector usage to datum_array_builder_t, for the sake of size checking.
Made datum_array_builder_t::add use rcheck_array_size.