- Chat.Respond* functions now pipe their own OutgoingChat objects to Pipeline, so that %% substitutions work

- Chat.IsPrivate is now manually set, to make %% subst. work
- fixed a lot of plugins that were not updated to the newer %# substitution system
- reduced reliance on i.Bot.Say from plugins
- fixed asl plugin
- fixed some abstracts to make use of substitution system
made IncomingChat.Matches use a string,string dictionary; trigger regex matches now require named subcapture groups. this solves the design issue of expanded regexes reducing the convenience of matches. all affected plugins updated
- reorganized libraries into their own folder

- cleaned up build folders
- newer VPSDK with self-contained vpsdk.dll

bMotion CLI:
- chat from current context is now printed to console

bMotion Library;
- fixed VPConnector so that long messages are split into separate says
- VPConnector keeps track of per user session numbers
- VPConnector now treats named console messages as chat
- VPConnector now has whisper support
- Fixes to some abstracts and plugins