Added Map class to re-implement Array.map