Create factories for complex object creation.

Created factories to aid in the creation of complex objects. This is a
step towards decoupling stapler from the Laravel Framework and its
ServiceProvider class.
Update composer.json.

Updated composer.json:
- Removed Laravel/Framework requirement.
- Added ICanBoogie\Inflector requirement.
Refactor to use factories, decouple from Laravel.

- Refactored the Interpolator class to use ICanBoogie\Inflector instead of
  Laravel's string class.
- Refactored Attachment.php to use a factory for object creation
  (removed IOWrapper dependency).
Remove Laravel specific directories.

Removed Laravle specific directories as part of the process to decouple
this package from Laravel.
Clean up factories.

Cleaned up and refactored factories.
Clean up annotations.

Cleaned up the annotations used in several classes (fixed typos, etc).
Refactor trait location.

Refactored traits to be in their own directory (since there can be more
than one of them now) and refactored Stapler.php to be Singleton.
Refactor configuration to be driver based.

Configuration is now driver based so that configuration will still be
available outside of a framework.
Remove Laravel composer dependency.

Removed the composer dependency for Laravel, added in a dependency for
Doctrine/Inflector.