Iain Banks dies of cancer aged 59