While working on Bug #3, determined that finalize wasn't getting called when the trigger was unpligged

Module finalize function now attempts to execute if the module state is bad.
While working on Bug #3, decided that functions should just set status to bad on failure, not actually kill the thread. Now, only the finalize function kills the serial thread