Initial implementation mimicking the log library API