RandomPicker A generic class that allows picking random objects from arrays with or without repeating