Functions

Remove common properties, recursively. You can optionally normalize more by passing a closure.