Ignore IntelliJ files
produce a shaded jar. reduce dependencies, since there are no actual tests.
add dirty tracking to avoid constant re-writes of data. risks missing changes if an object is retrieved and is updated without calling set, but this works OK for my current use case.
record last host that saved a particular session