- Refactored NSError handling so that where expected passed-in Error objects were actually given back with errors from lower calls.
- Changed some lower-level calls to simply return nil on failure rather than unknown state in case of errors.