Rangers complete signing of Graham Dorrans on three-year deal