added support for multiple listeners instead of just one (and add/remove listener methods now also comply to java beans naming standards)