High level system diagram:
Captain Pugsley has quite a stressful job so he'll try to sleep as much as possible, conserving previous resources (battery). Motion detected by the PIR will trigger an interrupt that wakes up the mcu to try to determine if it was a false alarm or not (settings can probably be adjusted from app). If somebody's there it'll send a push notification to the app. Ideally it'd try to determine if this person is allowed or not too but it looks like we can't access the ARP tables on the CC3000 to determine other devices on the network. I'll have to figure something out here.
In between there's the command center online to act as the bridge between the app and the device. This will most likely be based on nodejs, express, mongodb etc. It will log past events so the app can show them any time even if Captain Pugsley is sleeping.