ZK-2278 Richlets can be able to define without specifying their names

http://tracker.zkoss.org/browse/ZK-2278

+ some refactors