These blocks were not strictly needed but helped readability. I didn't
mean for the reformatter to change them while dealing with the "this"
problem. It also removed some braces in switch statements but who cares.
Replaces the jankson implementation with night-config. Night config is
what the forge api uses so it's easy to produce .toml files in the same
structure as CC:Tweaked.
All config options and comments from CC:Tweaked are implemented. Some
of these options are ignored in various bits of implementation but that
is another problem :)
Also splits the config into a client and server file. The server file is
saved per-world. Names and locations are consistent with CC:T.
This is a little magic compared with our previous approach of "list
every private IP range", but given then the sheer number we were
missing[1][2] this feels more reasonable.
Also refactor out some of the logic into separate classes, hopefully to
make things a little cleaner.
Task execution times are stored in the config file in milliseconds, but
they're stored internally in nanoseconds. This commit adds time unit
conversions from milliseconds to nanoseconds.
Fixes#9