The ENS library is to be used in dapps and possibly other tools that need to connect to the set of ENS contracts on the Ethereum blockchain. It should give them all the tools they need to resolve and set records for their ENS names, as well as abstracting implementation details including, but not limited to:
- namehashes (could be provided as an advanced option)
- resolvers (unless it's absolutely required for custom resolvers)
- using the graph for getting textRecord or non-eth address keys
- decoders/encoders of addresses