Refactor PType.h

Because the SDK is no longer 16-bit compatible now, the whole near/far
thing can be factored out because they're identical.