The core functionality of the WifiPal project