Merge pull request #137 from roydude/v1-train

v1train
Merge pull request #138 from roydude/v1-train

Blocked 26997
Merge pull request #139 from roydude/v1-train

v1train
Merge pull request #140 from roydude/v1-train

still 26854
Merge pull request #141 from roydude/v1-train

still 26854 again
Finalised 26854.