Pulled type-to-string out into template to_string() function.
Fixed iteration begin/end bug
Fixed empty equality
Added string !=