Lots of updates and fixes.
Actually added files.