Less-strongly-typed FilePathMarshaler

As [proposed](https://github.com/libgit2/libgit2sharp/pull/430#issuecomment-18381466) on #430, to fix #241.

> If `managedObj as FilePath` fails, we could fallback to use reflection to grab a Posix property and fail if there isn't one.