This change will help us separate binary support into
separate files, because we only refer to binary serialization
functions in the actual binary serialization paths.
A couple of small tweaks were needed to fix test failures that were
inadvertently introduced in the last down integration. I also had to add
the map.js file which was missing.