moving everything into the e_iterator namespace, putting Exception class into its own file