Migrating from Google App Engine ecosystem

Are there any tools and/or best-practices, that make the process of migration from GAE (Python or PHP) with it's ecosystem of services (s.a. authentication, datastore, search, caching etc.) to an alternative cloud hosting service, or even self-hosting -- fairly easy ?

This is one significant concern before making a choice to go with any PaaS provider, i.e. how to avoid lock-in, and have the freedom of choice to move-out if there are enough incentives to do so -- financial / otherwise, including the ease of migration. Perhaps, one reason to restrict oneself to IaaS providers, though the initial effort investment (and also over time), is significantly higher than with PaaS.

AppScale is a platform that allows users to deploy and host their own
Google App Engine applications. It executes automatically over Amazon
EC2, Rackspace, Google Compute Engine, Eucalyptus, Openstack,
CloudStack, as well as KVM and VirtualBox. It has been developed and
is maintained by AppScale Systems, Inc., in Santa Barbara. It supports
the Python, Java, Go, and PHP Google App Engine platforms.

AppScale is an open-source cloud computing platform that automatically
deploys and scales unmodified Google App Engine applications over
popular public and private cloud systems and on-premises clusters.
AppScale is modeled on the App Engine API and has support for Python,
Go, PHP and Java applications.

The goal of AppScale is to provide developers with a rapid, API-driven
development platform that can run applications on any cloud
infrastructure. AppScale decouples app logic from its service
ecosystem to give developers and cloud administrators unprecedented
control over app deployment, data storage, resource use, backup and
migration.

The TyphoonAE project aims at providing a full-featured and productive
serving environment to run Google App Engine (Python) applications. It
delivers the parts for building your own scalable App Engine while
staying compatible with Google's API.