WIP: forms refactor