Refactoring and misc additions, added bg scroll