Cleaned up interfaces by promoting ivars to private properties, fixing singleton, etc.