Modifiquei a estrutura de States para usar um Context que passa as variáveis, assim o código de States fica desacoplado da interface do processing. Acho que agora vai ficar mais fácil implementar várias ferramentas diferentes.