Case Class Explained
Option Values in Scala