Wrote the majority of the core_getopts replacement function.  Still needs fine details and then actual testing.  Need to research any other built-in things which happen to help with backward compatibility.  I'm also considering writing a reset of some sort so you can call getopts multiple times (e.g. function calls with getopts in them) without having to set a local OPTIND or whatever... not sure if this is a good idea or not.  Might be best to always reset with a local OPTIND=1 declaration.  When finished, need to write tests for it.
Finally got core_getopts largely finished.  The actual test and loop structures bug me for some reason, but I think that's just the I-hate-nested-if-blocks person in me.  Now that I've solidified the outcome, I might be able to step back and improve the code.  That said, it's realllly fast in my testing.  Still need to finish writing unit tests for it.  These are getting big too... might need to write entire scripts, one for each function rather than for a whole namespace.
Added core_Error and core_getopts to the sbt core.sh namespace.  I'm going to need getopts immensely, and core is always required.  So this will help.  Wrote several tests to help with the core namespace.