power set. thanks to Joao Silva
http://stackoverflow.com/questions/1670862/obtaining-a-powerset-of-a-set-in-java
power set acknowledgements