This is a work in progress based on @mikejac's work. Missing: * No 'new' operator. * I don't think STL is currently supported.