The anatomy of a context-aware application | Synapse