units: use compact and one-line option to ease parse of Units (bug #38270)
* units.m: by making use of the --compact and --one-line options, GNU units
only outputs the conversion factor so it won't be necessary to parse it from
the output making a call to str2double enough. Remove call to eval(). Give
more meaningful errors for input checking, and identify possible attempts to
non-linear conversions. Change style to follow Octave coding conventions.
Add more tests.