Remodel pricelist for performance

Yeah, I know, in one commit :)

Expanding whole pricelist to flat view did not worked - it
generated huge amount of data in unacceptable time.

This version has following advantages:
1. It performs much better
2. It allows adding new options without changing the code
3. It integrates into Oscar much beter (uses Option class)