Fix spelling error of 'separate'

Signed-off-by: Kouhei Maeda <mkouhei@palmtb.net>
Merge pull request #17 from mkouhei/fix_spelling_error

Fix spelling error of 'separate'
Moved Tonic specific tests out of the way.
Add HelperFunctions unit tests
Add Validators unit tests
Fix not working code and edge cases uncovered by unit tests.
Add Jenkins setup file
Change paths and includes to be more PHPunit friendly.
Add awesome Jenkins Auto-CI and stats generation Ant script

Based on the information on http://jenkins-php.org/.
Moved Database connection to seperate class to facilitate unit tests
Disable database based RecordValidator when running unit tests.
Add missing error messages and codes.
Add Mock objects to unit tests.
Update README.md with unit test dependencies and instructions.
Merge branch 'feature/unit-tests' into develop
Add str_replace_once and str_replace_last
Greatly extend NAPTR validator, with multiple checks for each part.

With great effort I distilled the specifications of the NAPTR record
from RFC2915, and compiled the validation rules featured below. The only
part that of the specification that I do not actively check, is the
POSIX Extended Regular Expression part, because implementing that would
be disproportionately complicated.

Format
    Order Preference Flags Service Regexp Replacement

Order
    16-bit unsigned integer
Preference
    16-bit unsigned integer
Flags
    quoted (empty) string, specific values:
    Defined: S A U P
    Allowed: [a-zA-Z0-9]*
    Mutually exclusive: S A U P
    Terminal: S A U
    S: Record value points to SRV
    A: Record value points to A or AAAA
    U: Record value is absoluteURI
    P: Record value is protocol specific
Service
    quoted (empty) string
    Protocol is required when Flag is terminal
    Allowed: (?:[a-zA-Z][a-zA-Z0-9]{0,31})(?:\+[a-zA-Z][a-zA-Z0-9]{0,31})+
Regexp
    quoted (empty) string

    Valid substitution POSIX regexp (from RFC):

        subst_expr   = delim-char  ere  delim-char  repl  delim-char  *flags
        delim-char   = "/" / "!" / ... <Any non-digit or non-flag character
                       other than backslash '\'. All occurances of a delim_char
                       in a subst_expr must be the same character.>
        ere          = POSIX Extended Regular Expression
        repl         = 1 * ( OCTET /  backref )
        backref      = "\" 1POS_DIGIT
        flags        = "i"
        POS_DIGIT    = %x31-39                 ; 0 is not an allowed backref
Replacement
    bind-style FQDN
Add unit tests for new extended NAPTR validation
Fix bugs in NAPTR validator based on unit tests
Merge branch 'feature/extended_naptr_validation' into develop