move examples to plunker
improve custom dropdown item support
support custom data source function with promise or callback interface