Best working version (so far). Exit calls are commented out currently. Passes tests 1 and 2