I think, it's ```New``` (uppercase) in other places, such as ```SystemPath.New```, so we should be consistent.

And one time it's ```class:new``` (we pass the class as first parameter) and ```SystemPath.New``` (without self). For inheritance to work properly, we need to pass the class, right?