[feat] added impulse layer parameter to add different behaviour for layers

This change allow layers to trigger different behaviour patterns depened on that
parameter, this is totally optionall so the layer does not need to use it at all
it may be helpfull for layers that will implement different behaviour patterns
like encoding/decoding different queries, the different in queries can be expressed
using that parameter