title: Handling NSCoding Errors in Swift
body: <p>How should errors related to NSCoding be handled in Swift?</p>
  
  <p>When an object is initialized using <code>init?(coder:)</code> it may fail to be initialized if the data is invalid. I'd like to catch these errors and appropriately handle them. Why is <code>init?(coder:)</code> not defined as a throwing function in Swift?</p>