Bugs fixed (dk why)

issues with the holder will almost certainly be due to the arraylist
taking null, and empty to be 2 different things. this version is pretty
robust And I've yet to find anymore bugs with it