minor cleanup
cleaner deleters
convert ignore to use vector instead of a singally linked list
use snprintf to ensure there isn't an overflow