(PUP-3750) Support :include: in mailalias type

The mailalias type does not allow the specification of included files,
which contain an alias's elements. Such alias entries are commonly
specified in the an MTA's aliases file through the following syntax.

aliasname: :include: /path/to/file

Specifying the rest of an ":include:" line as a recipient does not
work, because the existing mailalias type will quote the entry.

This change adds a new parameter named "file" to the mailalias type,
which allows the indirect specification of a file containing the
recipients.  The parameter parses and generates ":include:" alias entries.
Something like https://github.com/puppetlabs/puppet/blob/master/lib/puppet/type/file.rb#L364 should work.

It might look like
```
validate do
  self.fail "You cannot specify both file and recipient" if @parameters.include?(:file) && @parameters.include?(:recipient)
end

@joshcooper, does that sound reasonable?