Implement logging in base classes

## Implement logging in base classes

In every base class where it makes sense, implement LoggerAwareInterface and use LoggerAwareTrait.  This will make it easier to write debug code.

### Tasks
- None

### Additional Notes
- None