[kihx] Clone a mesh to make multiple objects.

- Add std::shared_ptr<IMesh> IMesh::Clone().
[kihx] Optimize ConsoleVariable::Int() and Float().

- Now ConsoleVariable stores integral and floating point values. So avoid converting string to scalar.
[kihx] Implement pipeline threading.

- Make IS to PS stages thread-safe.
- Implement threaded rendering using multiple RenderingContexts.
- C++1x style Thread class (but occurring crash on complex threading).
- Revise pipeline code paths.
- Add a simple profiler, ScopeProfile.
[kihx] Add const modifier for functions.
[kihx] Optimize scanline conversion code.

- Skip code paths in uncovered scanlines of a primitive.
- Remove unnecessary function calls.
[kihx] Add Atomic<>, Mutex and ParallelWorker.

- Atomic<bool>, Atomic<int>: a thread-safe scalar value object using interlock-functions.
- Mutex: a mutex object using critical section.
- ParallelWorker: a thread pool.
[kihx] Rendering using a thread pool.

- Add rendering implementation using a thread pool.
- Make Atomic general.
- Add an option of ConsoleCommand for unit tests.
[kihx] Fix ThreadPool crash.

- Revise task and thread queuing method for ThreadPool.