Abstract out log and log entry classes
Initial redis implementation