Add some edge cases

Note the last two new cases are fail now.

There are also some cases which I am not sure which is the "right" solution, pls see the comments.
Will not pass this one because it is also valid JavaScript, and we don't want to assume we know what the user actually wants.