First version of the Window System interface.

[new]: Added the first version of the interface for a cross-platform
Window System.
Interface of a window event handler mechanism.

[new]: Added the first version of the interface of a cross-platform window
event handler.
Fixed a issue.

[fix]: Added the missing 'public:' statement at the
DesktopWindowEventHandler declaration.
Updated the WindowSystem. Added exception intrfce.

[new]: Added an interface for exceptions: Silk::Exception. The
framework should only throw this kind of exceptions.

[new]: Updated the interface of Silk::DesktopWindowEventHandler by
adding anonymous functions.

[new]: The destructors of Window and WindowEventHandler were implemented
inline.

[new]: Declarated WindowFactory<DesktopWindow>::createWindow as static.
Exception, SmartPtr, Platform and WindowSystem.

[new]: Added a copy ctor to Silk::Exception.

[new]: All accessor from Exception are now const qualified.

[new]: Exception::Exception() is now private.

[new]: First full implementation of the Exception class.

[new]: Macro: SILK_OS_WINDOWS_DESKTOP.

[new]: All smart pointer are now dll-exported

[new]: Added and implemented the Silk::WindowFactory.

[new]: Added some new member functions to the Window interface:
setWidth, setHeight, setTitle.

[new]: Update Silk::DesktopWindow ctor. Also implemented it and the dtor.
Updated: smart pointers, window system.

[new]: Silk::Windows Added both an accessor and a mutator to interact
with the object that handler the events: getEventHandler; setEventHandler.

[new]: Window::Window is now declared in place.

[new]: The accessors and mutators for the anomymous functions now belong
to the entire interface.

[new]: Updated the smart pointer to handle pointer polymorfism as much
as possible.

!!WARNING!! Building the library will result in multiple linker errors.
            This will be solved soon.
Updated Silk::WeakPointer.

[fix]: Made several changes to WeakPointer in order to make it simpler and
less verbose. Also to make it better suitable for pointer polymorfism
cases.
Updated Silk::ScopedPointer.

[fix]: Made several changes to ScopedPointer in order to make it simpler
and less verbose. Also to make it better suitable for pointer polymorfism
cases.
Interface and implementation of smart pointers.

[new]: Updated the interface and implementation of the 4 smart pointer
supported by the framework. There was not substancial code changes but
the names of some methods do changed which will result in some code
getting broke.
Updated the smart pointer implementation.

[fix]: Smart pointer typedefs like pointee_t and reference_t now have
public visibility.

[fix]: Pointer inheritance is now better handled for upcasting cases.
Internally it uses dynamic_cast<>.
Updated the WindowSystem.

[new]: Event handlers are now friends of their windows.

[new]: User delegates now also take a Window as a parameter.

[new]: First implementation of DesktopWindow and
DesktopWindowEventHandler.
Some few updates to smart pointers.

[new]: SharedPointer::getCounter now returns a const pointer to the
internal reference counter.

[fix]: Corrected some compilation issue.
Updated the smart pointers.

[new]: Improved the speed of operator == and != by defining comparisons
against the raw types, avoiding a constructor call to create a smart pointer
just to perform the comparision.

[fix]: Comparing a smart pointer to a base-raw pointer could return an
incorrect result since the base-raw pointer would have to be transformed
in a smart pointer so the comparision could be performed. A call to a ctor
would result in a call to a dynamic_cast which would translate a perfectly
valid raw-pointer in a nullptr.
Updated the smart pointers.

[fix]: Unique and Shared pointers internal state would get compromised
if they were assigned to another smart pointer where the dynamic_cast
returned a nullptr.
Updated SharedPointer.

[new]: SharedPointer now as a member function named owners which returns
the number of shared pointers that own that same resource.

[fix]: Corrected some compiling issues from SharedPointer::RefCounter.
Updated the SharedPointer.

[fix]: Fixed several compilation issues related with the a const_cast.