PROTON-628: split out usage of the buffer in MessageImpl#decode() to its own method to enable supplying the buffer directly

Appled patch from Clebert Suconic with some indentation+whitespace fixup.

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1607356 13f79535-47bb-0310-9956-ffa450edef68