Added StringEx.ToArticle with returns nouns with correct articles (a/an)
Fixed Unit Needs not being gated by settlement level (if a level if specified in the Need definition the Unit must belong to settlement of that level or above for the Need to trigger)