Header storage to assoc array

I changed header storage to associative array so that a header could be set and altered with just the name instead of having to find its index.

Example:
```php
/**
 * Instead of this
 */

// Set the header
$curl->setHeader('Content-type', 'application/html');
$index = $curl->returnHeaderCount() - 1;

// ... do some stuff ...

//Alter the header
$curl->resetHeader($index, 'Content-type', 'application/json');

/**
 * We can do this
 */

// Set the header
$curl->setHeader('Content-type', 'application/html');

// ... do some stuff ...

// Alter the header
$curl->setHeader('Content-type', 'application/json');
```

I took care to retain backwards compatibility with the numeric reset and removal of headers, so the first example still works.

It took a lot of changes to get rid of 1 line of code, but it feels a lot more natural.