More working
Clean up
Added tests for exceptions