Optimised Object::memoryUsage()

- Reduced number of set lookups by performing find/insert in one
- Removed bookkeeping for objects with only one owner - they should never be counted twice anyway

This knocks 20% off the total runtime of a certain Gaffer benchmark.
Merge pull request #359 from johnhaddon/memoryAccumulatorOptimisation

Optimised Object::memoryUsage()
David has no objections, and Andrew isn't here today to object, going ahead and pulling this one.