Pre-5.16 compatibility

At the cost of supporting UTF8 package names for those perls.
Update ppport.h
Implement file version checking
Rename record type enum members to have a common prefix

TAG_ makes it clearer (IMO) that this isn't just some random status
enum, but rather the actual file format's spec's bits.
Read/write header separator