Add util for opening centered window (bug 1101002)

This adds:

* A util for merging defaults similar to _.defaults (albeit only takes one defaults obj.  
* The basic centered window opening code
* Plus tests for all of the above.
MDN says "The string must not contain any whitespace" so I thought I'd add the test to make sure I'd got rid of all the spaces.

[1] https://developer.mozilla.org/en-US/docs/WebAPIWindow.open#Return_value_and_parameters