The Data Science Toolkit ( DST ) is a fantastic open RESTful API resource for all sorts of data processing use cases. Check out the developer documentation to see what all is available. Some of the more surprising resources include multiple geocoding endpoints, of which, two are drop in replacements for Google's and Yahoo's geocoding APIs. Big projects will probably be rate limited, however.
Your Own DST Server
The really cool thing about the DST is that it maintains an open and freely available Amazon Machine Image of the entire system. I ended up using this internally on a project where we needed to do a lot of Geocoding really fast. Just boot up the AMI and start making requests. It operates exactly like the open API they maintain at datasciencetoolkit.org, just at your own URL.
A DST PHP Api Client
In the process, I built a simple PHP API Client for the Data Science Toolkit. Only Geocoding endpoints are currently defined in my Client, but it should be a good start for other projects. By default, the client will operate using the Open API at datasciencetoolkit.org, but you can set a custom URL if you are using your own AMI of the DST. Everything you need to know will be in the README.