Improvements after code review. Move Exception to non internal package
and provide getters for timeout and time unit