Large cleanup

This commit is a large cleanup throughout the framework. Changes are:

- Put use statements on separate rules
- Fix some variable positioning in docblocks
- Import dependencies with use statement rather then using them directly with their namespace in a class
- Fixed an incorrect `@param` statement on a property docblock
- Fixed some incorrect return types
- Replaced stdClass with "object" (see note below)
- Replaced a static::make with a new Illuminate Response call in the Response facade (to be in line with the other functions)
- Added dependencies to the start function in the workbench Starter class

The reason why I replaced stdClass with "object" throughout all of the docblocks is because it isn't correct. Stating that you expect stdClass means that you don't expect any other class except the stdClass which is wrong. You need to indicate it as "object" so you can expect different types of classes. A prime example is the migrator class where some functions expect a migration class. Those classes aren't stdClasses but they are objects.

Remember: all stdClasses are objects but not all objects are stdClasses.

**Note:** The only time I didn't convert `new \Class` statements to use statements was for Exception classes. I'm not sure if it's preferred to also import these classes first before instantiating them. Opinions? Taylor?