replace int with size_t in stream methods

Thus the read(...) and write(...) methods of all stream classes now have identical parameter lists.
This will bring these classes one step closer to a common interface.
Fix github-merge with git version 2.1.0

Running git version 2.1.0 on OSX (homebrew), I get
  fatal: '1q': not a non-negative integer

I'm guessing git command-line parsing got more strict recently?
UniValue: use correct setNumStr() input val, when setting number values
UniValue: compact (!pretty) output should not include extra whitespace
UniValue: add unit tests
UniValue tests: use more BOOST_CHECK()
Added protobuf-compiler library to the Qt 5 Dependencies
rpc_tests: use BOOST_CHECK_EQUAL

Upon failure, BOOST_CHECK_EQUAL provides additional diagnostic information,
displaying that data that failed to match.
Merge pull request #4730
Merge pull request #4744
Merge pull request #4739

de1f051 Added protobuf-compiler library to the Qt 5 Dependencies (elichai)
Merge pull request #4731

c53b1ec Fix github-merge with git version 2.1.0 (Gavin Andresen)
Merge pull request #4706

8695a39 replace int with size_t in stream methods (Kamil Domanski)