Major overhaul to utilize exception handling