[phpunit] Upgrades phpunit to version 4 and adds some changes to the code to use feature available in this version

@catchamonkey

Apparently we're next to be able to get rid of phpunit 3.7. We were stuck there before because of the dependencies of some behat's contexts.

Problem that is about to be solved here https://github.com/Behat/CommonContexts/pull/56.
We weren't using the specific context which have this dependency so we can move forward.
I decided to move conservatively before just to stay inline with behat, even if we were forced to have a very inelegant solution that relied on calling parent::setup and parent::teardown all over.
I've updated also that part.