Error/exception handling revamp

- ResponseException renamed to ConnectionError
- BadRequestError thrown when receiving an OAI-PMH error