Add a logging callback mechanism
This addresses #238 (closed), and is an even simpler implementation than the one from !73 (closed), without logging levels and storing the callback in the Dav1dContext instead of as global state.
Edited by James Almer