Refactored agent configuration
Use puppetlabs/inifile for settings in puppet.conf
Specify the value of $ensure in the class declaration

This deprecates update_puppet variable
Add agent_package param

It is not called 'puppet' in at least one distro
Identation fix
Add support for list for modulepath
Use a single template for the agent service conf file

Install it conditionally, as in Gentoo there is no config file for agent service
agent.pp and server.pp inherit puppet::params
improve the package installation

Move all package installation related operations to package.pp
Improve the condition on where to install the puppet package on master
It is based if the puppet package name is different in agent and master,
and if the specific node is a master ($puppet::server::master = true variable)
Add full Gentoo support with keywords and USE flags for package installation

Introduces dependency to adrienthebo/portage module