Support 3Scale user_key parameter

Allow setting the TrackviaClient's base uri path, supporting different integration env
Fixed several bugs
Correctly handle de/serialization of the internal "id" field
Parse both kinds of error-data structures passed from the Trackvia Service