Represents the intent of a controller input in a ControlScheme. This class uses the Flyweight pattern. You create instances by calling ControlIntent.GetIntent(name). If an intent instance already exists with the given name, it is returned, otherwise a new one is created and returned.