More cleanup for multiple devices of same type.  Think this is close.  Some issues where if you pass an unexpected value, it crashes the app - thatll need to be fixed, but its very usable as long as you use it as intended