new plugin system, all built-in commands are now plugins