Allow mock-based patching in shell tests

Added `patch` method that uses mock.patch (similar to `patchobject`)
  - NOTE: this shadows `testtools.TestCase.patch` method that uses
    simple monkey-patching in favor of mock-based patching,
    relevant comment added in the code.
Also oslotest dependency is added.

Change-Id: Ie4d25bc53decb308398eded350c81a90a257b254
Related-Bug: #1384511