Store Param objects as instance attributes.

Store Param objects as instance attributes.  Preserve the descriptor behaviour
by overloading the __setattr__() method of the Box class and having it call the
__set__() method of the attribute if it has one.  Also, remove the __get__
method from Param, since it didn't do anything special, as well as the __del__
method, because it is not really necessary to protect parameters from deletion.

The reason for this change is that as soon as you have multiple FAUST instances
they start clobbering each others name spaces as well as their own, that is,
every name space (box/group) would contain *all* parameters, and not just its
own.
Implement support for synthesizers in compute().

PythonDSP.compute() now interprets its input argument differently depending on
whether the DSP has inputs or not; if the latter, the input argument is the
number of samples to produce.