in spec test @el.data('theDate'), @selectedDate and setSelectedDate
beautify the code and style
demo page
fix bugs