added get_source() method for loading remote URLs