From Edge Computing to Edge Intelligence: exploring novel design approaches to intelligent IoT applications