Added `disconnect()` method to DatabaseManager.

This method helps with unit testing where multiple connections are opened during a single PHPUnit process. Calling `DB::disconnect($name)` provides access to the protected `$connections` variable in a similar manner to `DB::reconnect($name)` but without recreating the connection. This prevents PDO Max Connection errors during database-heavy unit testing.
Changed to return void as `unset()` has no return value.
[BugFix] Collection.php

To enable Lazy Eager Loading with Constraints.

When I now use something like this it fails:

```php
$users = User::all();
$users->load(array('posts' => function($query)
{
	$query->where('title', 'like', '%first%');
}))->get();
```

The problem I think is the handling with func_get_args(), it puts the relations array into another array.
Merge pull request #2299 from bkaskes/patch-2

[BugFix] Collection.php
Merge pull request #2277 from bexarcreativeinc/4.0

#2276 Added `disconnect()` method to DatabaseManager.
upgrade mockery... return correct value on isset for eloquent mutators.
sync original before filling in case default attributes are set.
use intersect when filling.