Fix for issue #18180: support --puppet-version in apt installs

In puppet-community.erb the `apt_install()` function doesn't use the puppet-version argument.

This commit fixes this, by using `apt-cache madison` to find the latest packages version from the apt repositories, and installs puppet-common prior to puppet to satisfy dependencies.

This fixes bug [#18180: --puppet-version does not work](http://projects.puppetlabs.com/issues/18180)