[Branch]: differential_rotation

This is the feature branch that contains some diff rot code, I think it needs some love so I am opening this so people don't forget about it!!
You could have a decorator which looks like this:

```
@quantity_input(u.arcsec, u.arcsec, u.km, None)
def my_sunpy_function(solar_x, solar_y, distance, some_int_parameter)
```

Which would compare the args to the decorator to the args to the function and try and do `f_arg[i].to(arg[i])` for each arg and raise an error if `arg[i]` is not None. 

I like the idea of the attempt to do the conversion, this also could be done in the decorator as above.