performance improvements and size limit removal

I rebased and reworked my earlier commits made for issue #5 to add information on exactly what cases they speed up. Since i know of no further pathological cases, could not construct any more, and was not told about any more, i would now like to move forward with removing the 1mb size limit as well, so that is included in this branch. I am confident that we have the knowledge and technology to fix further performance issues that might crop up.

@adamkennedy  : It would be great if i could get your go-ahead on merging this branch.

@moregan and @wolfsage: Please let me know if you see any issues in these commits.