some improvements

- works with classic titanium
- easier to setup
- avoid multiple instances
- less code