LolOptimalRole rewriten

I've added a huge amount of stuff here, and most of the old code is
currently commented out. Need to clean some things up, and comment a few
more things though.
Added multi list to LolOptimalRole

It will now output only the best lists, and as many as it finds.