Changed some naming, added a few more interfaces.
Adding pipeline friendly enumeratee.