Implemented method take()

Solved by implementing a new abstract method for TapeObject called
canBeTaken(). It identifies the Key object on the field.
Also had to modify the makeStep() method by adding a new condition -
canBeTaken().
A new method - seizeField() - in the TapeHead has been added to simplify
and make cleaner the makeStep() method.