Refactoring, menu rewrite, particle fix megacommit.