[5.0] Extracted Contracts

Extracted Database, View, Validation, Translation and Queue contracts.

Fixed some typos along the way

Only ones remaining are:
* `Illuminate\Routing\Annotations\EndpointInterface`
* `Illuminate\Routing\Matching\ValidatorInterface`
I'll correct everything modified already. Should I create a new PR for other files that don't alias the contracts or push that to this PR?

The changes list is quite big now...