* Allow setting IgnoreExtraArgs on an individual basis
* Remove passing in the flag as a separate parameter
* VS plz
* Push the RunMode setting out to its own attribute, because fox wants consistency.
Bonus: Removes the need for that godawful 'RunMode.Default'.
* Revert previous commit
* Fox doesn't like module-wide switches 😒
* Allow arbitrary attributes to be added to commands
I still don't approve adding type info back into commands, so
I decided to use this solution for allowing arbitrary attributes to be
added to commands.
Add attributes property to ParameterBuilder
Add Attributes properties to info types
* Why on earth git
* Add using for system so that Attribute can be used
* C#7 features in commands, CommandInfo in ModuleBase
* Update TypeReaders with C#7 features and IServiceProvider
* Add best-choice command selection to CommandService
* Normalize type reader scores correctly
* Fix logic error and rebase onto dev
* Change GetMethod for SetMethod in ReflectionUtils
Should be checking against setters, not getters
* Ensure args/params scores do not overwhelm Priority
* Remove possibility of NaNs
This adds an (optional) CommandServiceConfig, as well as a DefaultRunMode for commands.
This resolves#368 (for commands where a RunMode is not explicitly specified, a custom default value should be used)