Changed sharedInstance pattern
Rename sharedInstance() to defaultInstance() to better reflect that it's not a true singleton, you can create multiple XCGLogger instances
Add an identifier to distinguish instances if needed
Add unit tests to test defaultInstance always returns the same instance
Change internal architecture to allow for more flexibility, custom log destinations etc