Changed list handeling
Unfortunately this means that it is not back-compatible.
You will have to reload your signRegistry with clearSignRegistry and registerSigns when updating.
Include new tokens
** and ***
Ignoring **^ and ***^ for now -- I don't know Python to know how they are different
These tokens may be inacurate as I don't have access to the actual filter on my computer, just the text on mobile.
As such these tokens are hidden for now.
Added primative hashCode() method to SignInfo
Because I'm supposed to since I did an equals()
:D
added /replaceSigns to set signs according to registry
.
Went for less stored in gson classes
Now observes rotation when setting.
Remake your registries.

Also, screw you wallsigns for being impotent I don't care about you anymore all signs placed by replaceSigns() will be standingsigns for all I care
replaceSigns() no longer causes block updates
replaceSigns() now observes whole-block offsets properly
Added ^ token to toggle block state for block waypoints

They are still hidden though until I've tested that they are at least a bit accurate.
They are still usable though. Once I've tested the block waypoints I will add them to the listed supported tokens.
More intuitive use of CommandWaypointParser.parse
derp, save before commiting