All - Rework config API to allow default/optional values - Now returns a boolean success, and takes a pointer in which to write the successfully parsed value (unchanged on failure) - Also cleaned up argument processing to be flatter and slightly less hacky