lots of updates to facilitate AI and strings in place of chars
merged with master