Allow resolvers to specify WHY they failed

- Added class unresolvable() as an option to return
- unresolvable() always evaluates to False to avoid breaking legacy
implementations
Merge pull request #79 from bstrdsmkr/descriptive_return_codes

Allow resolvers to specify WHY they failed