Opportunities and Challenges of Integrating Cloud Computing, IoT and Healthcare