Using Molecular Constraints and Unnatural Amino Acids to Manipulate and Interrogate Protein Structure, Dynamics, and Self-Assembly