Why there is two output in Titanic case in tflearn quickstart?
Since you have only one binary target to predict (survived vs not survived) you can use only one output (that provide the probability of surviving). The problem with this approach is that you can not longer use softmax activation, since it will always be 1. Remember that softmax activation has the form
$$g(x_k)=\frac{e^{x_k}}{\sum_{i=1}^n e^{x_i}}$$
Since you have only one element to run the activation it will be normalized always as 1.
It is used mostly for categorical prediction (i.e. among several possibilities only one is correct).
You are getting $0$/$NaN$ loss because your model always return 1. Instead of using softmax activation you might try sigmoid activation, so you can interpret the result of the network evaluation as the probability of survive.