Add Enumerator#size
Cleanup and compliancy fixes for Enumerator
Add Float::INFINITY and Float::NAN