title: FullCalendar end date null whenever event is not changed even though allday false
body: <p>Does anybody know why is the end date null on those "allday=false" events?</p>
  
  <p>Fiddle Sample: <a href="https://jsfiddle.net/L1g0z3jd/" rel="nofollow noreferrer">https://jsfiddle.net/L1g0z3jd/</a></p>
  
  <p>I instantiate it differently from the start date, it shows just fine in the calendar view, but for some reason I can't understand whenever i get clientEvents, even thought i have not changed it, I got a null in the event end date!</p>
  
  <p>PS: Just for the sake of "conscience" I must add ... I'm using and old version of google chrome (v 57.0.2987.133 64-bit) and an old ubuntu version (Linux Mint 18.1 Serena)</p>
  
  <p>Its getting me crazy! Thanks!</p>
  
  <p>HTML Code:</p>
  
  <pre><code>&lt;button onclick="javascript:getEvents()"&gt;Get Events&lt;/button&gt;
  &lt;div id='calendar'&gt;&lt;/div&gt;
  </code></pre>
  
  <p>Javascript Code:</p>
  
  <pre><code>$(function() {
  $('#calendar').fullCalendar({
      header: false,
      allDaySlot: false,
      visibleRange: {start: moment('2000-01-02'), end: moment('2000-01-09')},
      editable: true,
      selectable: true,
      views: {
          settimana: {
              type: 'agenda',
              columnFormat: 'ddd',
              hiddenDays: []
          }
      },
      defaultView: 'settimana',
      defaultDate: $.fullCalendar.moment().startOf('week'),
      slotMinutes: 30,
      events: [
                  $.fn.getAgendaWorktime(1, "08:00:00", 60),
                  $.fn.getAgendaWorktime(2, "08:30:00", 120),
              ],
      select: function(startDate, endDate) {
          $('#calendar').fullCalendar('renderEvent', {
              title: 'free time',
              start: startDate.format(),
              end: endDate.format(),
              allDay: false
          });
      },
      eventClick: function(calEvent, jsEvent, view) {
          console.log(calEvent, jsEvent, view);
          if(doubleClick==calEvent._id){
              if (confirm('Delete it?')) {
                  $('#calendar').fullCalendar('removeEvents',calEvent._id);
              }
              doubleClick = null;
          }else{
              doubleClick=calEvent._id;
          }
      },
  });
  });
  function getEvents() {
      var e=0,err=false,$data = []
      $('#calendar').fullCalendar('clientEvents').forEach(periodo =&gt; {
          if (periodo.end==null || periodo.start.format().substr(0,10)!=periodo.end.format().substr(0,10)) {
              if (e==0) {
                  err = true;
                  e++;
                  alert('Event startint at '+periodo.start.format()+' cant spread to multiple days');
              }
          } else {
              $data.push({'ini': periodo.start.format(), 'fim': periodo.end.format()});
          }
      });
      alert($data);
  }
  
  jQuery.fn.getAgendaWorktime = function ($dow, $start, $elapsed) {
      var r = {
          allDay: false,
          title: 'free time',
          start: new Date('2000-01-02 '+$start),
          end: new Date('2000-01-02 '+$start)
      };
      r.start.setDate(r.start.getDate()+$dow);
      r.end.setDate(r.end.getDate()+$dow);
      r.end.setHours(r.end.setHours()+($elapsed*60));
      return(r);
  }
  </code></pre>