Optimized swap multiple
Changed some filter and maps to collect statements
Refactoring to remove some un-needed abstractions
Changed equals and hashcode to ignore case
Removed commons lang
Converted to log4j 2
Added actor version