big progress, but still incomplete
mostly done. only realtime and cross-platform remain now