Allow gpt2 to be exported to valid ONNX
Problem: gpt2 model and other models using gelu_new or gelu_fast cannot be exported to valid ONNX model.

Causes:
PyTorch will export some constants like 1 or 2 as int64, while ONNX operators like [Add](https://github.com/onnx/onnx/blob/master/docs/Operators.md#Add) and [Pow](https://github.com/onnx/onnx/blob/master/docs/Operators.md#Pow) requires data type matches between two inputs. It is invalid to have one input as float and another as int64.

For GPT2 model, another issue is the ONNX operator [Where](https://github.com/onnx/onnx/blob/master/docs/Operators.md#Where). It requires the first input to be bool tensor but currently it is uint8 tensor.

Add explicit data type cast could solve these problems. It is verified in exporting 3 pretrained models to ONNX model and loading by ONNX Runtime: albert-base-v2, distilgpt2, gpt2.
@LysandreJik failing unittest seems unrelated to the change-set introduced in this PR<|||||>Indeed @mfuntowicz 