properly convert NULL data objects

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1634966 13f79535-47bb-0310-9956-ffa450edef68
PROTON-723: based on gordon's patch, added support for the coordinator target

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

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1635267 13f79535-47bb-0310-9956-ffa450edef68
bumped the release version on trunk

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1635463 13f79535-47bb-0310-9956-ffa450edef68
allow access to container hierarchy even when freed

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1636672 13f79535-47bb-0310-9956-ffa450edef68
added timestamp conversion for message properties, cleaned up conversion elsewhere

git-svn-id: https://svn.apache.org/repos/asf/qpid/proton/trunk@1636938 13f79535-47bb-0310-9956-ffa450edef68
fixed up the examples README
PROTON-736: Ruby Message does not return all content.

The content method was not expanding the return size of the data to
accomodate large payloads.
PROTON-736: Only encode Ruby strings as UTF-8 if it says it's UTF-8

For Ruby 1.9 and later the String method has methods for both checking
the encoding of a string and also for changing that encoding and
validating it. So for those version of Ruby the code checks if a string
is UTF-8, or if it can be "forced" to be UTF-8, and, if so, sends it as
a String.

Otherwise, it considers the string to be only binary data and sends it
as Binary.

On Ruby 1.8 these functions don't exist. So what the code does is check
the string for non-unicode data. If none is found then it sends it as a
String, otherwise it treats it as a Binary.
PROTON-740: fixed shutdown and event related issues with idle timeout during sasl
exclude pn_transport_vlogf from swig
PROTON-739: Add TTL to Ruby Messenger subscribe method.

By default the TTL is 0, mimicking the behavior of the underlying C
code.

Patch by: Dominic Evanss <dominic.evans@uk.ibm.com>
          (Tweaked slightly by me)
PROTON-736: Created the UTFString and BinaryString classes for Ruby.

This allows users to explictly call out that a string is either UTF-8 or
a binary string.

For the UTFString type, it validates that the content provided is
actually UTF-8 and raises a RuntimeError if it's not.

Results returned from a Message object are wrapped in the appropriate
class.

This solution is Ruby 1.8, 1.9 and 2.0 compatible.
NO JIRA: Updated the documentation for the Ruby Message class.
fixed english in comment
PROTON-736: Default Ruby 1.8 encoding to be binary unless explicit

Also updated the patch to not re-encode the original string while
checking its value.
API Change: have explicit API to detect ssl if present
- avoids overloading other functionality for this purpose.
Initial refactoring of io layers:
- Eliminate some unnecessary stuff.
- Make pn_io_layer_t a pure interface.
Remove unused io_layer function.
Simplify amqp header code; remove header_count member from pn_transport_t