Use yajl json parser

Use yajl json parser instead of the stdlib JSON parser.
The reason is because yajl shows nicer messages when deals with invalid
JSON inputs.

As Linus would say: “Talk is cheap. Show me the code.” here is an
example:

$ irb
irb(main):001:0> require 'json'
=> true
irb(main):002:0> JSON.parse('{"name": "contracts" "license": "MIT"}')
JSON::ParserError: 743: unexpected token at '{"name": "contracts"
"license": "MIT"}'
.
.
.

irb(main):003:0> require 'yajl/json_gem'
=> true
irb(main):004:0> JSON.parse('{"name": "contracts" "license": "MIT"}')
JSON::ParserError: parse error: after key and value, inside map, I
expect ',' or '}'
                 {"name": "contracts" "license": "MIT"}
                     (right here) ------^
.
.
.

As you can see yajl shows parsing errors in a nicer way.
Separate logic of contract creation

The method build_from_file constructing a new Contract and is not
related with the other methods in Pacto module.
The idea is to separate what is construction of a contract from what is
using the contract.

Keeping consistency with the idea that the module Pacto is the public
interface that hides the details of the implementation. In this case
ContractFactory is a implementation detail that is not needed to
expose to the public interface.
Merge pull request #6 from jesusmercado/use_contract_factory

Move build_from_file to a factory class
[Jesús/Portela/Colucci/Pamela/Marcos] Create integration test for
validate a contract against a server
Organize tests

During our previous Code Jam we broke the tests, this commit fixes that
and also organizes the test structure, basically what has been done is:

- Standarize rake tasks
- Organize on diferrent folders unit and integration tests
- Separate spec_helper by test levels
- File configuration contains params for different test levels
Merge pull request #11 from jesusmercado/organize_tests

Organize test strucutre
Merge pull request #5 from jesusmercado/replace_json_parser

Use yajl json parser
Organize the .rspec files to execute all/unit/integration tests
Enable Coveralls only on the CI environment
Organize and update Guardfile to run unit and integration tests