Refactor of .Rotor from an interface to an abstract class.
Added argumented constructors to Rotor* classes and implemented a basic
RotorFactory