Add a NotificationCommand object defined type, refs#7214

Right now, this conditional will allow `arguments = {}` to be placed into the generated object file if `$args` from the Puppet code is an empty hash. `arguments = {}` in the object file will cause errors when Icinga 2 starts.

If the default `args` parameter is an empty `{}` hash, a better conditional check would be:

<pre>
<%- if @arguments.empty? != true -%>
</pre>

This way, we can keep the hash's default value as empty (`{}`), which will still let the `validate_hash()` function work. (`validate_hash` will cause catalog compilation to fail if `$args` is `undef`).