Fix postsync, enhance package definition and cosmetic code cleanups

The postsync `if ($content and $source) or !($content and $source) {` logic was completely flawed (always true, leading to always fail).

The `portage::package` definition would properly add a package's use, keywords, mask and unmask, but not remove them when no longer specified, which is now fixed. Note that there are remaining issues with this (see #103 for instance), but at least a simple case is taken care of.

Lastly, I've made a few cosmetic changes to follow the current Puppet Labs recommendations (quoting parameters, 2 space indent, :: scope prefixing).