add a comment here that after the init_build_options, one can use ```build_options(key)``` with worrying about default/missing keys. this is verified in the unittests and missing keys imply invalid keys (ie a bug)