Constructor injection of Models into Services, Ctrls and Views to allow these to access model during their constructor logic.

Some validation for Service for if class is not available.

Made Device & Service add() code the same, and documented the return value inline.