fixed error prone behaviour
fixed error prone behaviour

bridging error to NSError may result in crash. This happens cause the
internal (Apple) implementation use reflected class name as domain name
which seems has bugs (??). so as temporary workaround error class is
forced to conform CustomNSError and CustomStringConvertible protocols
which force  internal “_domain” property to be equal to user specified

JSTPMobile/iOS,JSTPMobile/iOS,JSTPMobile/iOS