Modernise ncm pam

Brings ncm-pam up to modern standards, including use of CAF::FileWriter, some unit tests and a large overhaul of the documentation to reflect how it is actually used.
I don't follow, sorry? My cahnge is just following what's already in the file.