overhaul to error message raising/responding.  created APIexception custom exception class.  respond500 utilizes it.  Test coverage needed?