Added whitelist feature, added ability to change items for shop on the fly and refactored code