Composable command-line parsing for Scala