begin taking full advantage of Laravel's IoC container.