Add support to change the default behavior

Right now, the default behavior cannot be changed. Instead, it must be specified for every single mock instantiation.

When a team chooses to work only with Strict behavior, it has no other options than explicitly calling the constructor by specifying that the behavior to use is Strict.

Since this can be error prone and time consuming, it would be ideal to set once and for all the default behavior to use for every subsequent mock instantiation.

This pull request contains a fix which will address this issue, while still retaining the current behavior.

The pull request also contains the tests defining the new specifications for the mechanism introduced.