Added ability to override entries in the mime database.

- Mimos must now be constructed using `new`
- Can now pass on options argument into the constructor that acts as a dictionary of db overrides and additions
- All look ups still happen with proper mime types
- If `predicate` function is attached to override, it will be executed to allow branch logic where Mimos is used (might want to add other values to the Mimos constructor so those predicate functions can be more useful. As is, only the matched mime value will be passed in. )

Related to https://github.com/hapijs/hapi/issues/1945
Better to assert that predicate is a function in compile and here just check if it exists