Support functions for constrained ordination failed cryptically with unconstrained results

Several support functions for constrained did not check if there really was a constrained component, and failed cryptically if they were applied to unconstrained ordination. They should fail because they cannot be applied, but the error message should be informative. Now it may be a message about mismatch of dimensions in QR decomposition or something equally cryptic. Traditionally we assumed that people know what they do, but this may no longer be true. I started to make these changes when I got a query of problem when the user tried to use `coef`  to extract coefficients of unconstrained ordination. 

Most of the changes are trivial: we only issue an error message if  `CCA` object does not exist. However, in `biplot` I made a non-trivial change that also could be implemented differently. In `biplot` we check that the `CCA` object does not exist. A problem was that we only apply `biplot` for linear ordinations that inherit from `"rda"`, but non-`"rda"` `cca` objects are handled by `stats:::biplot.default` which gives an obscure error message. I added `biplot.cca`  which gives an error if the object does not inherit from `"rda"`, and passes the object further to `vegan:::biplot.rda`  if appropriate. An alternative implementation would rename `vegan:::biplot.rda`  to `vegan:::biplot.cca` which already has the test and error message for non-`"rda"` objects. With this we also should edit and rename `man/biplot.rda.Rd`.