Hey Ryan,
The relevant snippets are attached. Looking over this code I realized old touches are not removed from the table, and that touch positions are floats (as they are in their native CGPoint representation). I think the UITouch pointer cast to int is OK, but I am not sure, IIRC this technique was gleaned from Apple example code. Finally don't forget to enable multi-touch property on your view object, you can do this through Interface Builder's inspector.