But this project is way more exciting!
The Korg SDK [1] comes with a lot of tools right out of the box (biquad filters, dual delay lines, wave types, access to parameter knobs, etc.) and their dev environment is really easy to install (you upload patches via MIDI sysex!).
The actual audio programming is wonderful - Korg's SDK gives you an pointer array of realtime values which you can manipulate how you see fit before they hit the audio out. Its simple (I made a auto pan in 10 lines of code [2]) but powerful when you apply buffers, etc.
[1]: https://github.com/korginc/logue-sdk
[2]: https://github.com/schollz/logue/blob/master/simplepan/simpl...
And the first question - also yes. But for synths other than the NTS-1 you'd have to send each note individually so you will more to do - e.g. keep track of note positions, determine notes in each chord, etc. I might try to do this too. As far as I know, the NTS-1 is the only one that has such a smart arpeggiator (probably because its monophonic and you can't enter chords easily...).
I've written bash scripts (using sendmidi [1]) to arpeggiate chords when I was feeling particularly lazy. It's pretty easy in midi. Figure out the root note, figure out the pattern, and just turn on/off root+pattern[i] :-).
[1] sendmidi is a great little command line tool to send midi commands to devices, or to record midi commands from devices. Its input format is plain text and you can include timing information so it's pretty easy to script music in this way: https://github.com/gbevin/SendMIDI