Solid test base

Good first pass on getting it working. Should have supports for Mac builds, needs to be tested.