## LBNLayer not working when called on multiple tensors

The `LBNLayer`

class is not working properly, when called on multiple different tensors. This problem can be showed by this minimal example:
(using tensorflow-gpu==1.13.1)

```
import tensorflow as tf
from lbn import LBNLayer
sseq = tf.keras.Sequential()
sseq.add(LBNLayer(n_particles=8))
x_0 = tf.placeholder(tf.float32, (100, 8, 4))
x_1 = tf.placeholder(tf.float32, (100, 8, 4))
y_0 = sseq(x_0)
y_1 = sseq(x_1)
tf.gradients(y_0, x_0)
# [<tf.Tensor 'gradients/sequential/LBN/inputs/split_grad/concat:0' shape=(100, 8, 4) dtype=float32>]
#
tf.gradients(y_1, x_1)
# [None]
# tf.gradients returns None, because there is no connection in the graph from y_1 to x_1
tf.gradients(y_1, x_0)
# [<tf.Tensor 'gradients_2/sequential/LBN/inputs/split_grad/concat:0' shape=(100, 8, 4) dtype=float32>]
# This connection exists
```

Calling the sequential model a second time on the tensor `x_1`

, does not connect `x_1`

to the graph. This is not the desired behaviour of a keras layer.

I suspect, the reason behind this could be, that the `call`

function of `LBNLayer`

(which is the call function of lbn), actually registers the given input tensors as attributes of the LBN-object. This way, it is stuck with the initially registered tensors and not able to feed other tensors through.

Edit:
To make the code work on tf.1.13.1, one has to change:
`weight_shape = (n_in, m)`

to
`weight_shape = (n_in.value, m)`

in `lbn.py`

line `512`