first attempt at legacy extensions

This is a rough attempt at some utility methods for interacting with unsafe APIs.  I imagine we may want to change some of this or it may not be appropriate here, but this should get the ball rolling.