Refactor OTMessage

This is first part of OTMessage refactoring.

Splits OTMessage code and code for specific commands. This allows to have commands defined separately (in a module).
Right, good catch. I thought that getAttributeValue returned a std::string, but it returns `const char*`.

In this case, @mhamrle, something like this:

```
auto success = xml->getAttributeValue("success");
b-bSuccess = success && std::string(success) == "true";
```.