Enabling High-Level Application Development in the Internet of Things