Merge pull request #1 from asutton/algorithms-reboot

Algorithms reboot
merge eb12162 from algorithms-reboot
use new Invokable and InvokablePredicate concepts
optimize advance and advance_bounded for counted iterators
Merge branch 'master' into algorithms-reboot
fix broken vcxproj