Added a user directive and related code to use it.