fix wrong apparently wrong exception handling

If the API's request() method's internal 'func' function raises an
error, the exception object is printed and execution continues. This is
wrong since immediately afterwards the 'response' variable is accessed
that never got assigned anything because of the interruption by the
exception.
This change removes the exception handling entirely, leading to the
error handling being deferred to the client. The print statement for
the exception is removed as well because clients are likely to print the
exception anyway (and they are forced to handle it).