Added ability to set custom collection class instance on paginator

This is useful for when you have e.g. a custom collection being generated on your model through `newCollection()`. For instance:

***Model:***

	class User {
		public function newCollection(array $items = array())
		{
			return new UserCollection($items);
		}
	}

**Will instantiate a UserCollection**

	$users = User::all();

**Will NOT instantiate a UserCollection**

	$users = User::paginate(20)->getCollection(); // Currently the paginator will always create a new Illuminate\Support\Collection

**With this PR:**

Can now at least configure it to return the collection:

	$users = User::paginate(20)->setCollectionClass('UserCollection')->getCollection(); // UserCollection
Same.