I have changed most functions that take a Csound instance pointer as first
argument to consistently use ENVIRON* type instead of a random mix of sometimes
ENVIRON* and other times void* (this also allowed for removal of the annoying
casts from void* to ENVIRON*). ENVIRON is now also declared if you #include
csound.h, but only as an "opaque" type of which the contents cannot be accessed.
One question that remains is whether ENVIRON should be changed to use a name
that better describes its function as a C equivalent of a Csound class (e.g.
CSOUND or CSOUND5 - 7 character names are preferred because they preserve
code and comment formatting). Any ideas ?