CF-154: handle mixed content, add tests

This PR will allow publisher to send the following:
```
"content" : {
  "type" : "application/json",
  "@text": {
   // arbitrary json
  }
}
```
This will be converted to an atom content like this:
```
<atom:content type="application/json">
{
   // arbitrary json
 }
</atom:content>
```