move instance into own file
small refactoring + improve docs
add pending test for spying on multiple methods of the same object
modularizing the spy code