add speed optimizations

remove cookie reading from cycles
change smiles replacement algorithm
add ignore list memory caching to avoid excessive cookie reading