Synced jsonutils from oslo-incubator

The sync includes change that drastically enhances performance on Python
2.6 with fresh simplejson library installed.

The latest commit in oslo-incubator:
- 732bdb6297eb9de81667f7713ebcb1ccc2ee45a7

Change-Id: Ib3dc0b713ed90396919feba018772243b3b9c90f
Closes-Bug: 1314129
Move RPC exceptions into a file

Change-Id: I990f877dfede659067ece9e5bd5b6bfe38f0dffd
Move drivers exceptions into file

Change-Id: I4c5e6c0ddc6890b2e1c7725c8739b54642dad9b0
Create protocol object and wire it into existing

Change-Id: I9ff8340c70d19f1f5280465fa0e13585fb021b51
More driver exceptions

Change-Id: Ibb3f60b6a1c145c8563c33dfa73fb9c3df18d376
Add a MessageWrapper

Means that deserialization happens in the amqpdriver rather than in the
implementations.

Change-Id: Ibdb67093310a4abed1f9165e466ddcba79a10d69
isolate load transport backend function

Change-Id: Icca299584060343ace181b1ee0e7c0747ca93e46
Transport Tests for isolated function

Change-Id: I44c089e91a2b314b9372d041dad525c940756f21
Add required protocol to all drivers

Change-Id: Iec4e2b27c58f7aaf24a51916922b0d9ccee7227d
Load protocol from stevedore

Change-Id: Idf1a2aac3712632d64854edacd7915052c5efc27