moved "get all devices" to an extension method
The implementation of the logic isn't dependent on the implementation of the repositories, so it should be pulled out.  (It also removes the need to have the device repository have an instance of a network repository.)