added basic map.rb implementation