[Nimble] Add matcher `BeSameInstanceAs()`

Adds matcher `BeSameInstanceAs()`, which compares two object instances to see if they are the identical instance.

If either or both instances are nil, `BeSameInstanceAs()` returns false. Ideally, `BeSameInstanceAs(nil)` should raise an exception, but as of right now, there doesn't seem to be a way (that I can figure out) of testing that, so for right now, it simply returns false.
This failure message is unintuitive--`'Sandor Clegane'` and `'Sandor Clegane'` appear identical. This leaves it up to the reader to deduce that the test is failing because, although the objects are equal, they are not identical.

I think we should print the memory address of both objects as well:

```
expected: 'Sandor Clegane' (0x154bd0a), got: 'Sandor Clegane' (0x13ba052)
```

This makes the failure *much* clearer. :bulb: :sparkles: 

It might be hard to write a test for this failure message, so no worries if you can't write a great test at the moment. If only we had a regex matcher...