Refactor to break out each license detection strategy into a separate function and run the set of strategies via reflection.