More particle removal progress

Everything is almost done, but agk::uString is causing problems. Will
migrate to std::string