testing
added and tested pairwise
- updated the move func to use it, wrote a small test suite against that
- added a function called pairwise and gave it a factory, not so sure about the factories
- had to copy the list for the precondition check in move, will need to update this
- rest of the APi needs to be updated with the factory concept
commit for Geoff
Merge branch 'justins_feature_branch' of https://github.com/NavalOrange/LinqALike into justins_feature_branch
Merge pull request #2 from NavalOrange/justins_feature_branch

Looks like a good start to me. I'll update it on master.