Added hardware accelerated SDL code, broke displaying and plenty of refactoring.