Give better error messages when trying to use the wrong kind of Tensor.

This patches gives better error messages when using the wrong kind of Tensor for the parts of nn written in C.
 
    require 'nn'
    local t = torch.ByteTensor(5)
    local layer = nn.SpatialConvolution(1,1,1,1) -- Args don't matter here.
    layer:forward(t)

Currently, the error is:

    attempt to index field 'nn' (a nil value)

Instead you get this:

    nn.SpatialConvolution_updateOutput is only supported for Float or Double Tensors.