code refactoring
licensing and shit