flow commands are now processed by the parser, not the loader.

- introduced `BmsFlow`, which contains every flow commands
  for the convenience of the caller.
- unrecognized flow commands now issue the warning.
- added `util::opt_owned` module. `BmsCommand` now does not
  copy the string unless required.
- A warning for `#SONG` is added. (my bad!)