skip tensors by stash and/or pop parameters. Skip tensors with
   pre-declared name can be stashed by "yield stash(name, tensor)" or
   popped by "tensor = yield pop(name)".
Here is an example with three layers. A skip tensor named "1to3" is
   stashed and popped at the first and last layer, respectively:
  @skippable(stash=['1to3'])
  class Layer1(nn.Module):
      def forward(self, input):
          yield stash('1to3', input)
          return f1(input)

  class Layer2(nn.Module):
      def forward(self, input):
          return f2(input)

  @skippable(pop=['1to3'])
  class Layer3(nn.Module):
      def forward(self, input):
          skip_1to3 = yield pop('1to3')
          return f3(input) + skip_1to3

  model = nn.Sequential(Layer1(), Layer2(), Layer3())

One skippable module can stash or pop multiple skip tensors:
  @skippable(stash=['alice', 'bob'], pop=['carol'])
  class StashStashPop(nn.Module):
