Dissecting structure-function relationships in molecular motors using protein engineering and single-molecule methods