Revamp subtests to use Test::Builder::subtest while remaining pretty

Decided to overwrite Test::Builder::note instead of writing our own
subtest sub without Test::Builder's planning features.

Also made a design decision to include 'not ok's for subtests but not 'ok's.
Merge pull request #24 from lejeunerenard/subtest-revamp

Revamp subtests to use Test::Builder::subtest while remaining pretty