Declarative linking

So this branch is designed to take the "declarative linking" feature in Jersey 1.x, port it into 2.x and upgrade and rename where required.

As well as String and URI, the system will now inject Link and lists of Links objects. This means that rather tuan @Ref and @Link and @Links there is now just @InjectLink and @InjectLinks. These are used in both cases of link headers and for injecting lists of element. The @Binding annotation has been modified to have a default so that we can save slightly on annotation complexity.

This feature doesn't yet support reading and backward porting of the values back into the original bean; but the use of EL should make this possible.

The documentation has been updated and revised to take into account the new annotations.