Added ability to pass Closure to union statement in query builder

Example:
```php
$users = DB::table('users')->whereNull('last_name')->unio(function($q)
{
	$q->from('users')->whereNull('first_name');
})->get();
```
Rename the merge method to collapse.

Signed-off-by: Jason Lewis <jason.lewis1991@gmail.com>
Add merge method to merge in another array or collection.

Signed-off-by: Jason Lewis <jason.lewis1991@gmail.com>
some updates

shorten code, updated docblocks
Updated readme.

Signed-off-by: Jason Lewis <jason.lewis1991@gmail.com>
Merge branch 'master' of git://github.com/laravel/framework into fix/proper-merge-collections

Conflicts:
	readme.md
Re-arranging some code in the application.
Move getConfigLoader into application instance.
More clean-up to foundation start file.
Merge branch 'config'
Fix static bug in trashed.
Allow passing an array to View::share. Closes #1204.
Update readme.
Do not set cookie when using array driver.
Use tinyint(1) for boolean in MySQL. Closes #1202.
Added softDeletes helper to Blueprint.
Update FormBuilder.php

[ADD] Method reset()
[ADD] Method image()
Update FormBuilder.php
Update FormBuilder.php

[REPLACE] URL::asset($url) by $this->url->asset($url)
Changed environment config from array_merge() to array_replace_recursive()