fixed Window API to now be much more user friendly
fixed windows problems
fixed a file formatting issue
ddggdgdfgdgdgddgdfddg
alot of fixes for linux as well as adding the usual getters and setters.
next i need to add more events for window management including opening,
closing, focusing, moving, minimizing and maximizing. need to add
events for mouse scrolling. next i need to change events to have an
idle state instead op going between boolean states(do we really need
this? a user should know that BLAHSTATE_UP means Idle as well.
changed X11 event management system from each window managing
themselves to the window manager handling events for all windows.
added alot of new window functionality but there are things that need
to be managed mainly regarding setting the dimensions of a window.
need to look at GLFW methods and adapt
added alot of new functionality for the API. fulscreen, resolution
settings, wether the window has been obscured, set the name of the
window, maximise window. need to be able to set the icon of the program
as well as cleanup and improvements
added alot of new functions for windows namelly for the sake of
convenience. need to define the rest of the functions for the window
manager
added alot of new functionality to the window manager. these functions
are seesntially a wrapper around pre-existing window functions but are
there for the sake of convenience to the end user only. one bug is that
when calling some of these functions using the value 0 confuses the
compiler as it can decide if the user is imputting null as the pointer
parameter or as the unsigned integer parameter. recommend changing
functions to using references to windows or using windows themselves.
changed API to now use standard library strings instead of C style
strings. this has allowed for easier safety checking and may come in
useful later. if it does not however, we can easily revert back. need
to add error logger of some kind to allow users to see if they have
messed up in some way.
removed the use of the standard library strings to C style strings due
to strange runtime issues that they were causing
added GLEW library for handling openGL extensions as well as changining
the class names to be abbreviated for user convenience
added alot of new functionality for the API.
improved OS/compiler detection
organized window function definitions to seperate files
added function pointer events
cleaned redundant code

need to do:
add functionality for handling errors
improve event handling to cover eveything possible
further implement events
try to get the vertical sync extension up and running

add further functionality to windows API to mathch linux API
added alot of new stuff to the window manager. including the
implementation of more event management, splitting the codebase
depending on OS, fixing bugs regarding Atomic variables and changing
key translation to only translate keys instead of translating and then
changing the variables of the respective window accordingly.
fixed alot of minor issues in the windows version of the API.

need to fix:
- character key interaction(Pressed/released)
- entering fullscreen mode seems to lock off event management for the window.

need to add:
- set window position
- set window dimensions
- set mouse position in window
- set mouse position in screen
- plant user callbacks to be used by event manager
hkkhkhkjhjk
Merge branch 'new-branch' into Experimental_Core

Conflicts:
	.gitignore
fixed small bugs linux side
added vertical sync support to window API. need a method to check if
oot works or not