fix compiling on Mac with non-GZIP kernel compressions

* Non-GZIP compressions do not include the size in the file.
Makefile.lib
uses the stat command to determine the size of the file and then append
the file size to the end of the image.
* On BSD systems like Mac, stat does not recognize -c "%s" instead it
needs -f "%z". This resulted in a non-booting kernel since the appended
file size was either corrupt or 0.
* Run both forms of stat, using whichever does not error out.
* Allow the 2nd form to print to stderr if something goes wrong to help
with debug.