Just a minor detail--I noticed that the theta parameter has a default of 0.0 in the __init__, but this default is not given to the Parameter descriptor itself.
Updated docs to reflect changes in this PR; particularly that it is no longer generally useful to manually define an __init__ and __call__ (though an example of where it is useful to define a custom __init__ is given) and the roles of the input/output class attributes are discussed.