use strict everywhere, sundry fixes

Some basic maintenance:

* use strict mode everywhere
* tweak protobuf test to encourage test coverage
  this helps test existence of the api, not necessarily how the api
  works.
* tweak how tests are covered to only cover tests
add some basic tests for internal utils

Helps with test coverage and basic sanity.
add few more tests for streams