Generic tiles

Tiles can be reused within the application.
Also more than 2 states are now supported too