Refine SOM training

* Use only selected data from the raw feature data set
* Use a large number of units for better precision
* Plot results using matplotlib
* Add genre classification data
* Assign colors to scatter plot based on genre
* Update requirements