Merge branch 'utility_grid' of https://github.com/OpenGameDevelopers/ZED into window_manager
Merge branch 'unstable' of https://github.com/OpenGameDevelopers/ZED into window_manager
Merge branch 'unstable' of https://github.com/OpenGameDevelopers/ZED into window_manager
|SOURCE|
[Common::System::File]
* Added File class which will handle opening, reading, writing, and navigating
  files
[Common::System::NativeFile]
* Added NativeFile which will access a file from storage like any other file,
  without any meta data
[Linux::System::NativeFile]
* Open
  * Uses the flags for the Access type to determine how to construct the mode
    parameter for fopen
  * Returns ZED_OK if the file was successfully opened or ZED_FAIL if it could
    not be opened
  * More specific information about any possible failures is printed to the
    terminal
* Close
  * Checks if the file is open, if it is then it is closed
* ReadByte
  * Reads in the specified amount of bytes to the data pointer passed in to the
    member function
  * Returns ZED_FAIL if the length read does not match what was requested
|SOURCE|
[Common::System::File]
* Added FileExists free function to determine if a file is present on the
  storage device
* Added DirectoryExists free function which will determine if a directory is on
  the storage device
[Linux::System::File]
* FileExists uses lstat to determine if a regular file or symbolic link exists
  on mass storage, if a symbolic link was not requested and the file is a
  symbolic link, ZED_FALSE is returned, otherwise if a symbolic link or a
  regular file is discovered, ZED_TRUE is returned
* FileExists will report any errors generated while attempting to determine if
  the requested file exists
|MERGE|
unstable into system_file
|SOURCE|
[Common::System::File]
* Added GetSize, which returns the file's size, in bytes
[Common::System::NativeFile]
* Added GetSize from the base class
[Linux::System::File]
* DirectoryExists does no error checking but will return ZED_TRUE if the path
  passed in is a directory, otherwise it will return ZED_FALSE
[Linux::System::NativeFile]
* Open gets the file's size and stores it for later use
* ReadByte works correctly by not using the p_pRead parameter for the amount of
  bytes to read, it was mistakenly used for the returned bytes read (which is a
  mystery to the author of the code)
* ReadByte uses the size of ZED_BYTE for the size parameter in fread
* GetSize returns the amount of bytes the file contains
Merge branch 'window_manager' of https://github.com/OpenGameDevelopers/ZED into window_manager
|SOURCE|
[Linux::System::Window]
* GetDisplayCount should return the total displays supported on the system
|SOURCE|
[Common::System::Window]
* Added GetCurrentDisplayNumber to get the display number the cursor is
  currently over
[Linux::System::Window]
* GetCurrentDisplayNumber which reads the DISPLAY environment variable
  and extracts the display from it
|SOURCE|
[Common::Utilities::Grid]
* Moved to Linux-specific Utility source directory
[PandoraLinux::System::PandoraLinuxInputManager]
* Re-named the keys to their new ZED_KEY_* counterparts
[PandoraLinux::Renderer::GLES2RenderTypes]
* Re-named ZED_SHADER_VERTEXATTRIBUTES_GLES2 to
  ZED_SHADER_VERTEXATTRIBUTE_GLES2
* Added ZED_TEXTURE_TYPE enum
|BUILD CONFIGURATION|
[PandoraLinux]
* Moved most of the redundant variables into the Makefile from MakefileCommon
* PostScript documentation support added
* File copying occurs once at the end of compilation, if specified
|BUILD CONFIGURATION|
[Linux]
* Re-named all instances of "Linux" to "$(PLATFORM)"
* Linker output is colorised
|BUILD CONFIGURATION|
[PandoraLinux]
* The cat command to show the linker output only shows the specific file's
  linker output instead of attempting to show all linker output
|MERGE|
unstable into window_manager
|SOURCE|
[PandoraLinux::System::PandoraLinuxWindow]
* Added an EGLContext as a member variable
* EGL is used instead of Xlib to create the window to render to
* As it appears the newer PowerVR drivers from TI have issues with X11 (I'm not
  sure about the specfics), the window is created as a fullscreen window
* Default values are used for the colour format, depth/stencil format, and
  OGLES device capability
* There is minimal error checking for this initial version of EGL integration
* THIS HAS NOT BEEN TESTED ON HARDWARE
|MERGE|
system_file into unstable
|MERGE|
unstable into window_manager
|SOURCE|
[Linux::System::LinuxWindow]
* EnumerateScreenSizes renamed to the correct EnumerateScreens (this was
  changed when it was deemed necessary to create a SCREEN structure)
|SOURCE|
[Common::System::File]
* Added ReadString and WriteString
[Common::System::NativeFile]
* ReadString and WriteString declared
[Linux::System::NativeFile]
* ReadString reads up to the specified amount of characters the user has
  requested from a stored file
* WriteString writes up to the specified amount of characters the user has
  requested to a stored file
* WriteByte and ReadByte both provide more debugging information by displaying
  the amount of bytes expected and the amount actually attained from the native
  file I/O functions