fixed issue #3 and some other tweaks

- fixed issue #3 (added some respondsToSelector checks for non-required methods such as tableView:heightForRowAtIndexPath: and numberOfSectionsInTableView:)
- minimumLegalDistance now takes contentInset.top into account
- now passing source indexPath to tableView:didEndDraggingCellToIndexPath:placeHolderView:
- added UIGestureRecognizerStateCancelled to gesture recognizer