Tidied up the constructor a little

I looked into exception handling, but I couldn't figure out how this
works, so maybe we should discuss this again.