Split PyType into ToPyType and FromPyType

Split `PyType` into `ToPyType` and `FromPyType`. This is nice to have if you only feel like implementing the conversion in one direction, or if there isn't a logical conversion in one of the directions.

This PR breaks backward compatibility in the public API, so I'd appreciate a second opinion on it.