WIP - Adds a lot of prototyping code.