move more interop into F#
Add some Option helper functions and simplify.