add a new option -X|--exclude

add a new option -X|--exclude which is a comma separated list of directories that are excluded in search.
clean code a little and remove some tiny micro for loop overheads