changed around exception helpers, still not happy with them
changed names of exception and changed formatting