Using exceptions everywhere to handle errors