bus_negate incorrectly added

Copied bus_convert and modded it but link back to library retained
so generating script copied a bus_convert instead of creating a new
bus_negate. Fixed
multiple stream safe

bus_negate replaces negate making this twiddle capable of processing
multiple streams simultaneously.
Fix output order in munge_out for twiddles
bus_convert to handle increasing binary point

CASPER convert block can't handle increasing the number of binary points.
This was required in fft_biplex so the standard Xilinx convert block is
now used if this is required.
Bug fixes for specifying input widths in twiddles

bus blocks require input parameters to be a row vector and
these were specified as column vectors, causing errors during
initialisation script execution. Parameters now specified as
row vectors
Upgraded butterfly_direct

butterfly_direct now can handle multiples of two inputs at a time.
It can also handle asynchronous operation.

The overflow flag is now a vector containing multiples of 4
(real(a+bw), imag(a+bw), real(a-bw), imag(a-bw) outputs instead of 1.
This means that the interface has changed.
Constant into of_in port of stage_0 4 bits

Overflow now carried on 4 bit bus, whereas previously on Boolean bus. The
of_in input to stage_0 is now hard-coded to 4 bits Unsigned.

TODO: must be changed to n_inputs*4 when n_inputs option added to biplex_core.
n_inputs option added when adding butterfly_direct

butterfly_direct needs to have n_inputs specified. Hard-coded to 1
for the moment until n_inputs implemented on these higher level blocks.