Add files from origin to support iterator concepts.
Replace old iterator concept with origin forward iterator concept.

Remove length from fraud, since distance can be used for list size.
Guarantee that iterator's value type is the same as identity
Remove concept requirements.
* Algorithms don't depend on identities to determine element type, but use iterator value types instead.
* Identites must be convertible to iterator value types.
* Value types don't have to be real numbers (yet).
* Algorithms must return values of the same type as iterator value type.
Cleanup
Implement generic longest sequence, strongest correlation coefficient.
Used template epsilons for comparing test results to expected.
Use template math library for square root.
Fix variance to calculate with value type of iterator, rather than id.