Laravel 5.1 has the following classes that seems to share the same name and some have similar behavior.
use App\Http\Requests\Request;
use Illuminate\Support\Facades\Request;
use Illuminate\Support\Facades\Input;
What are the differences between the Request classes and when should we use each class?