Fixed incorrect exception documentation and reordered tags so @throws comes after @return.
Merge branch 'master' into exceptions-refactoring.
Implemented base `CrackleException` class. Modified all existing exceptions to extend.
Implemented a dedicated exception for dependency errors.
Changed `Request::validate()` to throw `ValidationException` rather than a generic `Exception`.
Added dedicated `RequestException` for request errors. Updated `Requester` to use.
Fixed copy pasta grammar.
Added stream error handling to `PUTFile` and updated to use `IOException`.
Changed `File` to use `IOException` for filesystem errors.
Fixed out of date documentation.
Implemented dedicated `ResponseException` for when a response object cannot be retrieved.
Improved error messages in `PUTFile`.
Fixed widespread incorrect namespacing of exceptions in documentation.