Added an extra definition for 'createSpyObj' to allow it to take a generic to return a specific type of the object it is mocking

e.g.

mock = jasmine.createSpyObj<ClassToMock>(
      'mock1',
      ['method1', 'mehtod2', 'method3']
    );

Also added a small wrapper class 'jasmine_spyOf' to allow casting of the mock methods to Spys in a nice way.

e.g. expect(spyOf(mock.method).callCount.toEqual(3);