Add requirements in the Change API, allowing PolyGerrit and API
consumers to use this information, and hopefuly improve communication
with the final users (change owner and contributors).
The API is thought to be both human and programs friendly, by exposing
a human readable description, a "type" identifying accurately the
requirement, and additional values in a key-value fashion.
For instance, the PolyGerrit UI might use these informations to display
each requirement with markup depending on its type, and fallback on the
fallbackText if the type is unknown (hence the name).
Change-Id: Ifb9e15a3c08ebaf42d8eb1469257c6e41cc22882