Added array map naming strategy

```php
class User
{
    protected $name;

   public function setName($name)
   {
       $this->name = $name;  
   }

   public function getName() 
   {
        return $this->name;
    }
}

$hydrator = new Zend\Stdlib\Hydrator\ClassMethods;
$strategy = new Zend\Stdlib\Hydrator\NamingStrategy\ArrayMapNamingStrategy(array('name' => 'real_name'));
$hydrator->setNamingStrategy($strategy);

$user = new User();
$user->setName('Brad');

echo $hydrate->extract($user)['real_name']; // outputs Brad
```
Do we really need the setters to be `public`?