Consolodating logic and adding Desktop/Mobile Controllers