remove some unnecessary string copies
convert thrown exceptions from runtime_error to Plist::Error