Introduce .getDouble and .getInt to SiriusConfig

These attempt to read a value as the particular type, and if that fails,
to convert it to such. Not a ton of crazy logic, but since
SiriusConfiguration takes types (not just Strings), it's been kind of
like trying to hit a moving target sometimes to populate your config.
This makes it more flexible.
More precise downcast for .getProp

@smuir pointed out that the downcast inside the Option doesn't do any
checking (beyond checking the Option, of course). It doesn't much
matter here, since it's an Any (which we can't do any checking on,
anyway), but if that ever changed, this could be a weird hole for
bugs to hide in.