Make changes to MBMS API following recs

* Change all error handling logic to return an error code via the async
callback
* Add an UNKNOWN code for errors for future backwards compatibility, and
prohibit the middleware from sending this code.
* Add IntDef for errors through the async callback
* Amend documentation for download()
* Implement support for arranging downloaded files into a hierarchy
following that of the server.

Change-Id: I4d5c8f6229b216d9aa84397e628e62279033cc74
Fixes: 76449215
Test: CTS
12 files changed