optional link labels

cf. issue trentm#50

NB: I opted not to escape link labels, since they weren't being escaped before - would be happy to fix this on request.