Add support for non-atlas textures.
Fix NullPointerException in BatchRenderDevice.

A NullPointerException occurs if a texture cannot be created (due to the
atlas being full, combined with lack of multiple atlas support, or due
to a specific BatchRenderBackend implementation not supporting non-atlas
textures). What happens is that when it comes time to render one of
these non-created textures, currentTextureSize will be null, causing
getFullWidthOfCurrentTexture() & getFullHeightOfCurrentTexture() to
throw a NullPointerException when trying to access
currentTextureSize.getWidth() & currentTextureSize.getHeight(),
respectively. The solution is to return 0 if currentTextureSize is null,
rather than trying to access it's getWidth() & getHeight() methods.