Ability to retrieve picklist values for a given field.

Say we have an sObject with two picklist fields: `Cars` and `Colors`. The `Colors` field depends on the value of the `Cars` field. We could setup a field dependency like:

<table width="100%">
    <tr>
        <td>Cars</td>
        <td>Ferrari</td>
        <td>Lamborghini</td>
        <td>Porsche</td>
    </tr>
    <tr>
        <td>Colors</td>
        <td>x Red</td>
        <td>Red</td>
        <td>Red</td>
    </tr>
    <tr>
        <td></td>
        <td>Blue</td>
        <td>x Blue</td>
        <td>Blue</td>
    </tr>
    <tr>
        <td></td>
        <td>Yellow</td>
        <td>x Yellow</td>
        <td>Yellow</td>
    </tr>
    <tr>
        <td></td>
        <td>Black</td>
        <td>Black</td>
        <td>x Black</td>
    </tr>
</table>

This allows you to do the following:

```ruby
client.picklist_values('SObject', 'Cars')
#=> ['Ferrari', 'Lamborghini', 'Porsche']

client.picklist_values('SObject', 'Colors', :valid_for => 'Lamborghini')
#=> ['Blue', 'Yellow']
```

Of course, the array elements are actually `Restforce::Mash` instances like:

```ruby
#<Restforce::Mash active=true defaultValue=false label="Prospect" validFor=nil value="Prospect">
```

**Tasks**

* [x] Update Changelog
* [x] Add readme entry
* [x] Test dependent picklists.