Added dynamic implementation of shared instance
Renamed 'sharedInstance' to 'shared'
Fixed variable name typo