Rabase AIX support from 2.7.x-based integration branch to master

This pull request takes the `aix` integration branch that was based off `2.7.x` and rebases against master so that it will merge cleanly into `3.x`. The previous `aix` integration branch was used to curate these change for Puppet Enterprise. The support is ready to be contributed to the FOSS product.