Merge provided context with default context

This addresses issue #1950 

My first commit to Hapi so hopefully all is as required. Have included two test cases to ensure this works as expected - 100% test coverage.

Chris
`merge()` is not the right tool here because we don't want to create a deep copy of context. Instead we need a shallow copy of the keys. A simple `Object.keys(context)` with a `for` loop would be enough.