Introduce common interface for DosomethingUserRemote creation.

#### What's this PR do?
- Introduces a common interface for `DosomethingUserRemote` creation
- Unifies a way to construct `DosomethingCanadaSsoUser` from different sources

#### Testing
![image](https://cloud.githubusercontent.com/assets/672669/5401260/7ceadcf4-8182-11e4-9878-567a2ad6e96c.png)