Bug fix in SmartFormatter.AddExtensions method

- Fixed bug in AddExtensions.cs - adding a custom extension was not working.
- Introduced AddUserExtensions and ClearUserExtensions methods
- Changed accessibility of SourceExtensions and FormatterExtensions in order to enforce encapsulation
- Added .gitignore file