Update Alert.php to display multiple flash messages for the session.

The previous alert widget within the advanced/basic app does not render multiple flash messages. The current implementation allows display of all flash messages assigned through setFlash. Also a validation is done for allowed bootstrap alert types.
Update Alert.php
Update Alert.php to add some refinements and clean up bugs.

Added closeButton parameter, assignment of CSS class corrected, and added php doc comments.
CSS Class assignment corrected.

Used ```Html::addCssClass``` and ```Html::removeCssClass``` more effectively.
CSS Class assignment correction # 2.

Ensure previous CSS classes are not appended and reinitialized in the foreach loop.
Code cleanup.

Removed redundant declarations and checks in the code.
Code & minor bug cleanup.

Cleaned up redundant code (and a typo missed earlier).
Alert types for flash messages are now configurable.

Each flash variable can be mapped to a bootstrap alert type through a configuration array passed to this widget.
Nomenclature and code realignment.

1. Renamed closeButton to closeButtonOptions. 
2. Generate unique id for each alert box.
3. Moved parent init to the top.
Reverted closeButton

Reverted name to ```closeButton``` to be in sync with the bootstrap ```Alert``` widget.
Comments cleanup.

Cleaned up a few comments ... hope its not my OCD again... :-)
Merge pull request #1250 from kartik-v/patch-1

Update Alert.php to display multiple flash messages for the session.