Added TopTag and TopMistag scale factor reweighting

I've updated the code to be independent from the BtagFunction. I tried to think of a way to implement it without inheritance and the only thing I could think of doing would be to switch both the Toptag and Btag code to use templates instead of inheritance. If you come up with a better solution let me know.