* Use auto for in some loops * Fix shadowing iterator declaration * Rename NUMBER to ARRAYSIZE. * Use placeholders instead of macros * Replace macro BIND_TYPE with std::bind * Replace BOOST_FOREACH with range-for