refactored classes & added license info for new files