Adds templated Image::readObject<>()

Issue: #38
Adds templated TVMExecutionContext::stackPop<>()

Issue: #38
Adds templated TArray::getField<>()

Issue: #38
Adds NonCollect MM

Issue: #36
Adds the skeleton of CLI args

Issue: #33
Rewrites unspecialized SmalltalkVM::newObject<T> with static_cast

Issue: #38
Adds static_cast into hptr_base

Issue: #38
Adds static_cast to specialized SmalltalkVM::newObject<>()

Issue: #38
Fixes casts in pointer arithmetic in memory managers

Issue: #38
Fixes specific casts in memory managers

Issue: #38
Replaces a lot of C-style casts with static_cast

Issue: #38
Merge branches 'refactoring/38/c_style_cast', 'feature/33/cli_args' and 'feature/36/noncollect_mm' into develop

* refactoring/38/c_style_cast:
  Replaces a lot of C-style casts with static_cast
  Fixes specific casts in memory managers
  Fixes casts in pointer arithmetic in memory managers
  Adds static_cast to specialized SmalltalkVM::newObject<>()
  Adds static_cast into hptr_base
  Rewrites unspecialized SmalltalkVM::newObject<T> with static_cast
  Adds templated TArray::getField<>()
  Adds templated TVMExecutionContext::stackPop<>()
  Adds templated Image::readObject<>()

* feature/33/cli_args:
  Adds the skeleton of CLI args

* feature/36/noncollect_mm:
  Adds NonCollect MM

Issue: #33
Issue: #36
Issue: #38