[MRG+1] fix astype usage to prevent copying

Removed were possible; using copy=False (from utils.fixes) were needed.

Also some C integer type fixes to gradient boosting.

Fixes #2206.
I think (but I should re-check this part and put in a comment if I'm right) that `y` is converted to a floating-point indicator matrix so casting `X` is not necessary. This is in the class `BaseDiscreteNB`, btw.