Feature/osfif 1013 request logging

Basically, there's a way to make the package backward-compatible by passing in functions that would alter the existing object.  (For instance by setting a nil-able function field.)