refactor plugin a bit and create demo etc