Able to now add and delete attributes as desired with only currently
selected attributes being taken into account.

Achieved this by: 1)Using a tempoary arraylist to store all the heroes
before being passed to findViableHeroes, 2)Using a tempoary arraylist to
store the current attribute as they were being deleted from the
arraylist as they were being processed by the findViableHeroes method
and then adding them back to the original arraylist later on.

*NOTE* The code is spaghetti right now and I will most likely be able to
delete some parts to make it simpler, but code is now fully functional.