> I have written a little something that atempts to draw out a sketch of
> what commands are present as of now and which should be added, I hope

Ok, this is a very good list. First of all, I'd like to focus on two
important issues that might have to be dealt with before 2.0. These are:

1. aio-* problems

Ok, as you've noted, the current scheme a bit confusing. Now how about if
we just drop the whole aio-* cmd set, and replace it with two new:
ai-* for audio input objects, and ao-* for audio output objects?

Both approaches have their benefits. There aren't many differences between
input and output objects, so ai-* and ao-* cmd sets would be identical. On
the other hand, at the chainsetup level, inputs and outputs are clearly
separate groups. This is why we have two 'add' commands. Similarly, two
versions of 'select' are needed because it's possible we have "file.wav"
both as an input and as an output.

Comments? To refresh your memory, here's a list of current aio-*
namespace:

This is another messy issue. So far, only audio objects have contained
position info. But this gets confusing when we start using position
related cmds at global (getpos), chainsetup (cs-getpos) and chain
(c-getpos) level.

So I propose we add a new chainsetup-level position concept. This would
mean that global position commands would be equal with chainsetup
commands (getpos = cs-getpos, length = cs-length, etc). Also, we should
drop chain-level position commands (c-getpos, c-setpos, etc) altogether.
These seem to just cause confusion. Then we'd have the audio object
cmds (aio-getpos; or ai-getos, ao-getpos, etc).

As a result, we'd only have two ways to either set or query the current
position:

[cs level]
- set position
- set cs-position
- set position of all audio objects (inputs and outputs)
- forward, rewind, etc
- like setting position, except new position is relative
to the previous current position
- get position
- get cs-position

[audio obj level]
- set position
- ... for one input/output
- get position
- ... of one input/output