Generalised curve drawing functions and batch fix

-Removed individual implementation of curve drawing and added a general
one under GS\General. This means they work uniformly under GL1, GL3 and
DX9. DX11 crashes for me so I couldn't test.
-Added an IF check in the batchers, so that it wouldn't crash when no
vertices are added, like in the scenario where you call _end() function
just after _start() (this was true in my curve example where it had 0
points if you hadn't added any). If some alteration to the fix is needed
(to take indices into consideration for example), then they should be
added. Probably Roberts domain as he is the one who wrote the damn
thing.