Alter Marionette.normalizeUIKeys to return a new/non-mutated hash

Instead of mutating the original argument hash, create and return a new cloned hash
Addresses issue #1728
The problem I was having, in `marionette.helpers.js`, by only adding the line `hash = _.clone(hash);` killed the test `"the events should be re-normalised valid ui references"` which is located in `view.uiBindings.spec.js`. The reason was because in `_delegateDOMEvents`, executing this line `events = this.normalizeUIKeys(events);` assumes that `normalizeUIKeys` is mutating the view's events hash. But the new `normalizeUIKeys ` behavior returns a new hash, not mutating the existing one. Thats the deal with the extra conditionals. If I can eliminate or alter that test (`"the events should be re-normalised...`) I can kill the extra code here.