Enable to add line number, and minor refactoring.

To add the line number option, I add to:
 - update the prism code base (js and css)
 - add a component parameter

I've refactored the codeContent setter from string building to DOM manipulation. This change is subjective and you can decide to go back to the string way.