main page refactor, tiles UI changes, backend refactor, *.js refactor