Refactor purity
Made minimum comment length lower
Refactor collection model