Introduce possibility to handle all kind of callback

Finally, as 3DS callback are not the only callback possibility, we make the callback system more generic to make it working with notification also for example.

PR englobe many improvements for make tests more easier to do : 
* Client use Guzzle to perform http request
* Hash generation move to dedicated class
* Value Object for ExecCode to make easier mapping
* Hash Validation when creating a Be2BillRequest
* Reduce the API exposed by `Client\Client`
* Simplification in Callback\Controller thanks to seperation Domain <=> Infra
This exception is not catched anywhere... do we really need to raise an exception here directly from the repository?