Pros:
* When it works, it works. We're processing ~100 msg/s in prod right now, for pennies
Cons:
* Only US-Central region support (no cross region)
* Your function runs as Admin (root) in it's project
* Your function must be deployed to the same project as other assets (e.g. can't listen to GCS or PubSub events cross project)
* No way to pass configs/params to a function (it's all gotta be in the code, including secrets)
* Very limited retry semantics (brute force, retry forever)
* No integration with Cloud Endpoints or APIgee, so every HTTP event driven function gets new unique URL
* Building on above, all HTTP endpoints will be public, no auth
* Slow deployments - e.g. took me 45min today to deploy 8 functions