Isolate API error object.

The current implementation merged the PodioError (the
exception) and the PodioError (API domain object) into one
common class. This is considered bad design and actually
also a very error prone implementation (it's not clear how
the Gson JSON parser will deal with the RuntimeException
heritage of the PodioError domain object).

NOTE! This commit will break the Podio Android client as the
"getDescription()" method is renamed to "getErrorDescription()"
(for better compliance with the other method names).