The Canadian province of British Columbia has declared a state of emergency after days of torrential rain. The storms have cut off major roads and stranded residents in isolated mountain towns.