Code Migration in Mobile Clouds with the NAM4J Middleware