Started researching how to read STDIN in functions for piping.  It's quite possible and whatnot but it has a couple repercussions.  First there's a race condition causing SIGPIPEs when testing with read -t 0.  Second, any output not echo'd with a new line will not be read properly (last line will hang).  I'd like SBT functions to auto-detect STDIN but I don't think it's possible.  So I either need a switch for it as a standard; or I need the rule to be: if no args are sent, try to read from stdin, then error out if still no data to work with.
Implementing the changes required to read from STDIN more easily.  Needs more work, but going to bed and I want to save this progress.
Huge changes to the way data is read in.  Added a FAQ to help document some of these standards.  This should help tremendously with future functions.  Wrote (or rewrote) tests to ensure it all works as expected.  Ultimately, this will allow me to simply send DATA as a herestring to any function or external program... the program merely needs to support consumption of STDIN.