[Test improvements] While performance testing findOne, I discovered some functional tests that would be much more readable in Spock than JUnit, so I've ported them from DBCollectionOldTest to DBCollectionFunctionalSpecification
Merge pull request #279 from trishagee/test-improvements

Moving some old tests to Spock
Made two accidentally-public message classes package private
Added general ability to encode DBRef and for DocumentCodec to decode DBRef.

  JAVA-1508