Charter protection against statutory erosion of privilege extends beyond a criminal context and includes client identity