make ess-inside-brackets-p work with nested brackets

Given an expression `[1,[2],3]`, `ess-inside-brackets-p` returns `t`, `t`, `nil` when evaluated at `1`, `2`, and `3`, respectively.  As it stands, this function returns `nil` at any position following innermost pair of brackets.

This behavior can cause bad indentation in Julia.  For example, lines after statement `[[] for i=1:2]` get one additional level of indentation, as `for` is interpreted as opening of a new block (rather than a part of comprehension).