Negative indices for list nodes, and list insertion and replacement: MAGN-4816

Added two new nodes: __List.InsertItemAtIndex__ and __List.ReplaceItemAtIndex__. Updated __List.GetItemAtIndex__ to take negative indices.

#### Reviewers:
* [ ] @aparajit-pratap 
Can we not use `List<object>` type instead of `ArrayList`?