Interoperability and Portability for Cloud Computing: A Guide