Support completely empty messages in git objects
As it turns out, a git object can be terminated by the last header,
without empty lines. In that case, dulwich currently "eats" the last
header line, which is obviously wrong.
When such a case happens, return an object with a None message instead
of an empty line. We make sure that serialization/deserialization
still works as expected.