Robot name - Revision 3

Moved the name generation functionality from `RobotNameRegistry` class into `RobotNameGenerator` class as suggested by @bwthomas . Also cleaned up the exception classes. They are less verbose now.

###### Previous PRs

https://github.com/jmmastey/level_up_exercises/pull/187
https://github.com/jmmastey/level_up_exercises/pull/199

`Regexp.new` is rarely used in practice. Even if you need to interpolate, you can do that with the Regexp literal:

`regex = /[a-z]#{some_var}#{etc}/`

This is a more idiomatic construction.