Recreated and added many, many things.

Merge with caution.