We want to allow projects to define their own labels, so we can't
assume the label list is global. In typical cases, we can access it
through a ProjectControl, ChangeControl, or related factory. This does
result in a few more places where we propagate
NoSuchProject/ChangeExceptions where there were none before. This is
intended: operations that query/modify labels on, say, a bare
Change.Id now do need to verify that the project/change exists.
For now, leave code in LabelTypesProvider, but try not to inject
LabelTypes where at all possible.
Change-Id: I4936ccafdb41848aaac3e335adf4648369d6abbc