Ensure Eloquent date attributes are output in the same DateTime format in toArray as when directly accessed

When converting an Eloquent model to an array, the format of the date attributes may differ from when accessing the attribute directly on the model. This pull request essentially allows you to customise the format in which DateTime fields are displayed in a JSON response.

Example of current behaviour. It's not simple to change the format of dates in a JSON/array response. They differ from the format when accessing the attribute directly:

```php
Carbon::setToStringFormat('d-m-y');

class Order extends Eloquent {
}

$model = Order::find(1);

get_class($model->created_at);
// "Carbon\\Carbon"

(string) $model->created_at;
// "23-01-14"

(string) $model;
// '{"id":1,"created_at":"2014-01-23 16:30:00"}'
```

With the pull request, the behaviour is changed:

```php
Carbon::setToStringFormat('d-m-y');

class Order extends Eloquent {
}

$model = Order::find(1);

get_class($model->created_at);
// Carbon\\Carbon

(string) $model->created_at;
// 23-01-14

(string) $model;
// '{"id":1,"created_at":"23-01-14"}'
```

Note that if the user doesn't call `setToStringFormat`, no functionality is changed. Dates are output exactly as they were before. Only once they change the format, _everything_ changes, as you'd expect.

Perhaps it would be suitable to add the default DateTime format to Config, which can configure Carbon during application boot?