Feature/ipc config

@odeke-em @joeybaker  please take a look
What would your thoughts be on making constant the indices for each of these options so that we can refer to them
by index to avoid hard coding the short and long opts?
For example we could have
`static const int kBudPipedConfigIndex = 2;`
`static struct option bud_long_options[] = {`
`....`
`[kBudPipedConfigIndex] = { "piped-config", 0, NULL, 'p' },`
`....`
};
This way when we want to refer to the short and long opts,
`struct option piped_option = bud_long_options[kBudPipedConfigIndex];`
Then when looking for something e.g piping presence

`size_t len = strlen(argv[i]);
`if (len < 1)`
 `  continue`
`char *arg = argv[i] + 1;`
`if (strcmp(arg, piped_option.name) == 0 ||`
 `    arg[0] == piped_option.val) {`
 `    config->piped_index = i;`
 `    break;`
 }`

I know it might seem quite verbose and more code/overkill but this will protect against any arg option changes.
It is just a random suggestion.