Give more details about directive declaration

I had a hard time understanding the different ways of declaring a directive, so I added some text to clarify the different return values of the factory function.