Added solution
Added some comments; added benchmark
Added gitignore