Intuitively it looks like $L$ is context-free. It consists of all even length strings (because odd length command strings can never constitute a closed path) where for every N, there is an S (and vice versa) and for every E, there is a W (and vice versa).
$L = \{ NS, SN, EW, WE, NNSS, NSNS, NSSN, ...\}$
You can design a pushdown automaton with two stack symbols $A$ for $N$ and $S$, and $B$ for $E$ and $W$. There will be an initial state, and a set of push and pop states for each direction symbol. Depending on which symbol you see first, you will go to a particular state and push/pop.
Say we have $NNSS$. We see $N$ first, so go to its push state and push $A$. We see $N$ again, so continue to be in its push state and push $A$ again. Now we see $S$, so we transition to $S$'s pop state and pop off an $A$. Do this again on the next. Accept the string by empty store.
This kind of language, which requires us to remember when to push/pop, cannot be modeled as a finite state automaton. L is definitely context-free.
As to whether iii is true, if $L$ is a DCFL, then $L'$ is also a DCFL, which in turn is a CFL. But turns out that $L$ is not a DCFL. Consider the string $NESW$. First we go to $N$'s push state. Next we see $E$. We don't know at this stage whether we are seeing $E$ for the first time or not. So we can go to either $E$'s push state, or its pop state, from $N$'s push state. The machine is non-deterministic, so $L$ is a CFL but not a DCFL.