Add factory and vistor pattern examples
Remove a.out from tracking
Add ruby tree gem example
Conditionally create directory in makefile