More pickler component cleanup
 - Got rid of 'pickling' boolean as its unnecessary; replaced with Pickler:Pickling() member function
 - Moved logic out of 'dopickling' function into Pickler:Pickle() member function, got rid of repeated code
 - Made it so that only container-related code is wrapped in container nil check conditions
 - Moved default pickle time to a member variable (self.pickle_time) so that it can potentially be overwritten
 - Made OnSave save the absolute bare minimum (if its not pickling, it will save nothing; if pickling, it will save either an empty table [if timeleft <= 0) or the time left [in data.time])