A library for wrapping functions and callbacks