Replaced all runtime exceptions with a checked exception.
Added the logger as a field to the recorder.
Added exception checks in the Recorder's public methods.

It is better if the exception is stopped before reaching the Recorder's clients.
Updated tests
Merge pull request #107 from cdmihai/removeRuntimeException

Remove runtime exception