add: BackgroundTile.cs, BackgroundController.cs; refactoring all