Incorporates this tutorial from John Lindquist: http://www.youtube.com/watch?v=MEmC0QH8ATQ