Separate unit and integration tests.

@arthurnn & @fw42 for review

## Problem

In pull #328 it was decided that a native C extension should be done in a separate gem.  That gem should be tested using the liquid gem's test suite, since it shouldn't break any liquid templates, and should have the same public API.  However, some liquid tests are testing internal details, and are mixed in with integration tests which use only the documented API.

## Solution

Separate unit tests from the integration tests so that another compatible gem could re-use the integration tests.