Cleanup & Refactor

Removed redundant code blocks in constructors. Refactored public fields
to private fields accessed through properties. Added a static instance
variable to main class for static access.