Use PERL_INT_MAX, this works in microperl
Remove defining DIR* to void* on microperl

It's possible some older systems want sys/dir.h rather than dirent.h to
define DIR, however this is just a nasty workaround to the actual issue.
Remove including config.h (and co) in perlio.h

As far as I can tell this is entirely dead code.
Remove PERL_MICRO where it is conditionally used with other defines

There are several cases where PERL_MICRO is used combined with defines
not set in uconfig.h, the additional test isn't needed.