dividing up more methods, add scheme parameter to link class