Changed error return type.

This is a big change within the project because
it changes the way errors are handled. Before this
change, an error object was created and a stack trace
was generated. This was a convenient way of handling
errors because it bugs easy to find. But, because of
the issues described in issue #20, the project will
now be using integer return types. As a consequence
of this, all errors must pass along an error message
name and the current function name so that it can be
passed to stderr. This is the only way errors will be
as easy to find as they were in the method before this
(perhaps even easier, since there's a message for each
function the error travels up). On plus side of this is
that it removes the need for the platform-dependent stack
trace object. It also should enable compilation on MinGW
builds (since execinfo.h from the stack trace object was
not available on MinGW builds).

As it currently stands, the code will compile on Ubuntu
but will not run properly. It will probably take some
more error messages and probing to find the runtime error.
I'm going to anticipate the Windows build failing miserably
at compile time, since I haven't changed any of the windows
files to support the new error handling method.
Implemented Log_Error properly
Changed return value
Initial limit should be max of long
Fixed return codes causing launch to fail
Merge branch 'Issue_20'

Updating master branch with working progress of #22.