Refactored XTimeRequest code

- Moved the HTTP request code from the implementing subclasses up to the XTimeRequest object
- submit() always throws an AuthenticationException if the request is redirected to an error page