work in progress - plugin refactoring. non-verbose mode is currently broken :(