ctld: parse config file independently of getting kernel info
Separate the parsing of the config file from the reading of kernel port
information. This has three benefits:
- Separation of concerns makes future changes easier.
- Allows the config file to be read earlier, which is necessary for fixing PR 271460.
- Reduces total line count, by eliminating duplication between parse.y (for traditional config file) and uclparse.c (for UCL config file).
MFC after: 2 weeks
Sponsored by: Axcient
Reviewed by: mav
Pull Request: https://github.com/freebsd/freebsd-src/pull/1287