Multi label Data and MultiLabel Accuracy

This PR allows to use multi-label data {-1,0,1} with 0 means ignore, -1 negative and 1 positive.

@sergeyk review
This doesn't work -- the targets in SigmoidCrossEntropyLayer are reals in a [0, 1] range (inclusive); so you can't treat a target of 0 as an "ignore" label.  For example in my MNIST autoencoder example the targets are pixel values in a [0,1] range and many (most) of them really are exactly 0 (pure black pixels).  I think if you run MNIST autoencoder example with this SigmoidCrossEntropyLayer implementation it will do some weird stuff?