Beginning heavy refactoring
Updated gitignore