Fixes the way utf8 string length is counted.

When sending SIP messages with "special characters" e.g. "äöü",
the "Content-Length" of the body needs to be correct. (Content-length
mis-match). Before this change, the byte count was wrong e.g.

"ä" => 1 instead of 2

I wrote a couple of examples in "SpecSIPMessage" and double checked them
with MRI (Ruby 2.0.0).

Thanks to [Tgr](http://stackoverflow.com/a/2848483/980524)
Merge pull request #54 from wpp/fix_utf8_string_length

Fixes the way utf8 string length is counted.
Complete the SIP-Message specs.

I noticed some specs in SpecSIPMessage were not yet implemented.
They assert what was written in the corresponding 'it' blocks, with one
exception:

if a header is neither in headers nor extraHeaders,

    .getHeaders()

returns an empty array, but the spec said it should return 'undefined'.
I think an emtpy array makes more sense though. Let me know if you
disagree and I'll change it.
Merge pull request #55 from wpp/missing_sip_message_specs

Complete the SIP-Message specs.
Allow mangling of SDP
Actually coerce turnServers to Arrays
TurnServer config test was testing bad things