ignore target folder by git
performance fix in if
mergesort algo is refactored for readability and aspect joinpoints