Cleaned up prototype3 branch