feat($logProvider): add additional control over what gets logged

A simple addition that lets developers have greater control over what does and doesn't get logged. With this change you can disable log, info, warn and error messages, similar to how debug logs could be disable with $logProvider.debugEnabled in the past.

Closes #10560