Big push.

Finishes implementation, and rolled in a few bug fixes.