Client: add --only-important command line option

Add the new --only-important (-i) command line option. With this option
bcfg2 will only configure the important entries and exits clean
afterwards.
Client: support dryrun mode and only-important

Add support for displaying the skipped entries in dryrun mode when using
the --only-important command line flag.
Reporting: do not duplicate isstale functionality

The interaction entries have a isstale() method, we do not need a
template tag, that tries to figure out this on its own. The isstale()
method works even better: It knows, if the interaction is the current
interaction and compares the timestamp to the current time or (if it is
not the current one) it compares the timestamp to the timestamp of the
next interaction. So using the method of the model, you can browse the
interaction history and see, if the host was stale some time in the
past. Previously all interactions more than 24h ago were marked stale.
Merge pull request #185 from AlexanderS/only-important

Add only important flag
Removed ndiff from POSIXFile, only attempt unified diff.

This removes the ndiff, which is a bit extraneous and can cause up to 30 second
timeouts on larger files with many changes. unified_diff is faster and
generally more applicable, and is already what is shown to the admin on
interactive mode. This can save up to 30 seconds per file, per run.

A future commit can take the resulting unified diff and recreate the ndiff
specifically for the reporting if that is desired.
udiff doesn't mean unified diff, it means unicode diff
Fixed up test cases relating to _diff from POSIXFile
Fixed lint test error.
Clean up unicode diff handling a little more.
First pass at Jinja2 support for Cfg.
Update CfgJinja2Generator.py to more closely match git master code.
The first version matched Bcfg2-1.3.4.
Fix lint warnings.
Fix tests to match changes to the Jinja2 code.
Another lint whitespace fix.
Fix docstring
Don't refer to "path" as use of that variable is discouraged.