A newer, shinier, happy freenas-debug
Don't mimeencode the preamble, it causes bad things to happen to
multipart messages when the as_string() method is called.
redirect freenas-debug output to /dev/null and tar it's output up with
the rest of the /var directories.
Add some comments to freenas-debug to explain a few things ;-)
Document how the module code works
Remove content dispostion line so that the actual filename can be saved.

- While here, also fix and tar up the proper directory
Add options to specify directory and to save the tarball to ixdiagnose
Make "save debug" use ixdiagnose
Add example for new user using the API
Check for 'use default domain', not 'trusted domains'.
Put FreeNAS specific stuff under !is_truenas
Target to generate iso for testing.

(cherry picked from commit a03553aad6d182b2fbfa6deb7fba3bdd5f4eff92)
Define TRUENAS_COMPONENTS_ROOT to where trunnas files are.

This is where the TrueNAS build dir is pulled to pick out
parts used to generate TrueNAS.

(cherry picked from commit ee6c1bcc724f45fc1a43e5202e55d29985402ea7)
Make install_sata_dom.sh based on is_truenas.

(cherry picked from commit 6737cdb9be6621b883624ddb8133aba1435396d1)

Conflicts:
	build/create_iso.sh
sync from truenas, check for NANO_LABEL/VERSION
Partial sync with TrueNAS (satadom install).
Sync the required parts for dealing with satadoms.
Add NANO_LABEL_LOWER, remove useless comments.
Move is_truenas() to build/nano_env.

build/nano_env needs to make use of it, however most
of our code pulls in functions.sh AFTER nano_env.
Set the logo for the loader.conf based on NANO_LABEL.

Also define NANO_LABEL_LOWER which we'll need for a few places starting with
the cdrom loader.conf file.

(cherry picked from commit de4a8b2188691af67bdf6a625001bd9be3f14695)

Conflicts:
	build/files/loader.conf.cdrom