Adds generic device class to remove dependency on MSEAPI.