Started big refactorization :)