More generic way to obtain OptionInfo for options.
Options::addOption() now returns a pointer to the OptionInfo object that
corresponds to the created option. This provides a nicer and more
generic way compared to SelectionOption::getAdjuster(), and hopefully
makes it easier for static analysis and compilers to understand that the
info object always gets initialized to a non-NULL value.
Since this change requires the declaration of the corresponding info
object to be available whenever addOption() is called, one could also
get rid of the separate *optioninfo.h headers and merge them to the
corresponding *option.h headers. This would reduce the number of files
for one option type, and possibly make it a bit easier to maintain.
Didn't do that in this change to keep it more clear.
Change-Id: I143592ed3a0750d3908c6bc8897179d9059ea546