Fluorogenic protein labelling: a review of photophysical quench mechanisms and principles of fluorogen design