refactor + change license headers