Separating the plugin as classes

Making it more modular