Implement separate methods for wrapping tables and columns.

This is necessary because aliases need to be handled differently for tables and columns (adding a prefix or not). We can do this because it's clear in every situation whether we're wrapping a table or a column.
Fix method signature of inherited method.
Revert renaming of wrap() to wrapColumn().
Cache the method name as well as the attribute for getMutators to avoid the cost of all the studly_case calls.
setting up order, limit, and offset for union queries
Merge branch 'optimizeGetMutators_4.2' of https://github.com/Nanigans/framework into Nanigans-optimizeGetMutators_4.2
cleaning up some code.
Add hasNot and whereHasNot method
Add hasNot and whereHasNot method
Use ConnectionInterface instead of implementation

This will allow developers to use custom connection implementation.
Match with Laravel Code Style rules
Add new line at the end of the file
Remove useless line break
Remove last endl
Fixed Query\Builder call to undefined method hasGetMutator when using lists method.

When using lists method in Query\Builder:
Call to undefined method Illuminate\Database\Query\Builder::hasGetMutator().
Need new method getMutatorMethod

Proposed changes fix issue.

Signed-off-by: Graham Campbell <graham@mineuk.com>
Fixed a bc break due to the deletion of hasGetMutator

Signed-off-by: Graham Campbell <graham@mineuk.com>
Be consistent with types
Fixing conflicts.
Merge branch 'master' of github.com:laravel/framework
Removed deprecation annotation