Merge changes from evanphx