David is one of the greatest heroes of The Bible, “a man after God’s own heart”. But how can that possibly be, given some of the awful things he did?