Errors: Support a filter to control which errors are reported

Fixes #335
@mdevils The fact that configuration jumps between its own functions and the overridden functions of node-configuration made this hard to follow and implement. I understand why this has to happen, but do you feel it would be more unclear if we only have `lib/config/configuration` and use try/catch to determine if we're in the node or browser environment?