No doubles or border correction in kernel

The variable `tmp` is now an int to improve performance and because using a
double is unnecessary. Also, do not zero the border, just let it become what-
ever it happens to become. This reduces the logic in the kernel to speed it up.