REL-1501: Modified BasicPropertyList to now use the Preferences class to...

... write values instead of using serialization. The serialization method was previously failing with ClassNotFoundExceptions upon deserialization due to not having access to the classes in question, and as per the specification of the REL task, based on the simplicity of the data being stored (boolean / int values exclusively), it was proposed that the values simply be written instead.
It probably doesn't matter but I think we should avoid calling _notifyChange with the lock held. In fact if we are going to use Preferences maybe we shouldn't even hold a value field in this class and in the ChoiceProperty and instead just have get value and set value delegate to it.  Perhaps we should switch to the normal Java Preferences (instead of jsky Preferences) while we're at it.  We're already going to lose any existing user's old preferences anyway.

Based on the comments in the old code the `BasicPropertyList` and friends were most likely created by me in a former life, based on or lifted from old Marimba/Bongo code.  Now I think it is pretty terrible which is why I have a hard time letting it go. You've made it better and made it work again, which is the point of this task, so we should probably call it good and move on.  Still if we can fairly easily switch to standard Java Preferences and get rid of synchronization here it would be a bit better without reworking everything?