Update to modern getopts