AI meta data

Work done to make AI supportpower usage slightly smarter. Refer to #5830 

Allows some basic usage rules to be defined in yaml for supportpowers.
You can save a traitinfo lookup by pulling out a `GetOrDefault<ValuedInfo>()` and then doing a null check, like Health does below.