Added shared properties to types and mixin support for both shared and instance properties
Added a .gitignore file