Implemented equal
Added all overloads for == and !=
Added tests for equal
Added Predicate version for equal
Added tests for predicate version of equal
TODO: 4 iterator version of equal
Made template typenames consistent
Factored push_backs out from unit tests