If we were to make `Parameter` a special subclass of `Quantity` (I'm not really sure how I feel about that--Parameter really serves a different purpose as being purely information about a model--how, for example, is a constraint relevant to a stand-alone "Parameter" instance except in the context of fitting a model?)

But even if we did that one part of the design of the `Parameter` class is that it can be used as a descriptor or as a concrete object.  That way when defining a model, the author doesn't have to write:

```
class MyModel(Model):
    a = ParameterDescriptor(...)
    b = ParameterDescriptor(...)
```

they only have to remember one interface:

```
class MyModel(Model):
    a = Parameter(...)
    b = Parameter(...)
```

I don't think it makes the interface that much more complicated, because the `__new__` for `Parameter` (or maybe it's the `__init__`--I forget) quickly determines whether this is a "concrete" parameter instance or descriptor for a parameter.