Refactored a few more method implementatons, improved exception propogation for extension methods.