Add methods to retrieve non-PE platforms

* Add on_puppet_supported_platforms and on_puppet_unsupported_platforms
* Refactor to use common code
* Simplify code for existing methods
* Add documentation