Added contracts to provided identifiers. Fixed bug in data-object? function.