Improved Collection spec.

Note: it is not a good thing to override a node's property with
a different function.
E.g., `collection.records` should provide access to the actual
array of ids, not provide an array of wrapped objects.
Otherwise it is not possible to manipulate the `records` property.