rename InvalidRequest to Request Exception and maintain server response data

This might be too small grained to bother with but I thought I'd offer it up anyway.

This pull request changes the name of InvalidRequest to RequestException because sometimes the exception is thrown even if request is valid (eg: when the request is good, but zero records match the criteria). As well, the server response data is now stored in the exception so it's easier to handle certain cases. 

Bundle in (but not worth it's own pull request),  I added some more metadata detail when logging/outputting LookupTables.