Feature/refactor expectation

I intend to add some behaviour to Subject. I decided to clean it a bit before. I found it had 4 responsibilities: configure the wrapped object, proxy calls to the matchers, proxy calls to the wrapped object and proxy call to object using array access. I have segregated these responsibilities into collaborators, and cleaned the code a bit in the process.