added code style using tabs; finished first version of plugin system