Data Logging stuff. More abstraction.

...logging