Personal library of Michael Galloy
Contact me if you have feature requests or bug fixes.