Dave Wilton says that it comes from a 16th century term for 'liar' or 'braggart'. He says of the 'whipcracker' etymology that "[t]here is no evidence to support this contention."

Dave Wilton is a pretty reliable source in these matters.