General improvements to ParentCommand
- Now we use messages appropriate for each circumstance.
- Subclasses can now define their own supported parameter types.
- Only methods which are explicitly intended for being overridden are
not final.
- Default values for types are now stored in a Map<Class<?>, Object>,
allowing for subclasses to not only define their own defaults, but also
to override default defaults.
- Added an abstract method where initialization of custom supported
types should be done. This is abstract to discourage coding which would
(unintentionally) possibly cause infinite recursion and would not work,
due to the places I call the methods.
Added infinite recursion safeguard