Added gitignore
Added cycle tests and condensed if branches
Added cycle tests