Rangers re-gain their mojo to topple Port United