Improve the way to set up custom stuff in lightbox

I did a change in lightbox and removed the customClass attribute from the constructor. I've added it again because of compatibility issues in community.

Also, I've changed when the customClass and the preloader are added. Now, they are added when the lightbox is opened, not before. This allow us to have several lightbox on the page with different configurations.
You can pass `undefined` to addClass and it won't do anything. 

```
this.$lightbox.addClass(this.customClass || $opener.data().lightboxClass);
```