Establish a detailed list of functionality (features) of the library. THE REQUIREMENTS
Establish a list of affected components, i.e. the components which will use the caNl. THE LIST
Assemble a list of code/libraries/parts of components that may be reused to create caNl with respect to the above point. The same list is used in point 1.1. as affected components already implement the authentication so have the code THE LIST
Establish the APIs for the library. This will be the most challenging step I believe as all stacks must be happy with the outcome. THE API PAGE
Implement it.
Coordinate and support application of the library.