Add new AutoDiffBlock::constant() overload without block sizes.

This should simplify some uses of the autodiff code. The internals
have been changed to allow for objects to have an empty vector of
Jacobians, always treating that object as a constant.
Fix minor whitespace issue.
Fix bug in operator+ introduced by previous commit.

Also make documentation clearer.
Avoid infinite loop with two constant operands.
Reduce version to 0.9.

Since there is a fair chance of interface adjustments after the release,
the version number cautions the user a little bit more than calling it 1.0.
Merge pull request #54 from atgeirr/allow-empty-jac

Add new AutoDiffBlock::constant() overload without block sizes.
add redhat packaging
make packaging compatible with EL5
fix some clang 3.3 warnings

The most severe change probably is the removal of the AutoDiff
debugging helper functions which were useful from within a debugger
but unfortunately had to rely on a presumed linker bug in order not to
be removed in the final binary.

Also, some private attributes were unused. These have been removed and
the constructors of their respective classes have been adapted. Once
their intended functionality is actually implemented, they should be
brought back on an as-needed basis.

Thanks to @bska for the review!