make logging better

- add Is___Enabled properties
- add more overloads for team to use
- add NullLog so there will never be a null for unit tests.  we'll probably want unit tests to use a trace logger