Make exceptions much simpler throughout; First tests passing