Initital commit. Contains a lot of temporary code that will get cleaned up as development progresses. Currently set up as a Unity project as that's where I've been testing, but the goal is to build a C# library.