Added first draft of JugglingModelTrait.
Added more helper methods to maintain consistency with other traits. Added code to the Model class so it deals with the __get and __set methods when using several traits that overrides them.
Corrected more methods and refactored some others.
Refactored the control of setting correct storage values for the DB to the juggleAttribute method.
Removed setJuggleAttribute and getJuggleAttribute as they where not really needed. Tweaked the interface methods.
Some more refactors and corrections
Removed the check for dates in juggleAttribute.
Merge branch '0.3-juggling' into 0.3
Fixed minor issues, typos and comments.
Added some tests for the JugglingModelTrait and fixed some errors.
Some more fixes and commented out failing test.
Merge branch 'esensi-model-0.3' into 0.3

Conflicts:
	src/Model.php
Fixed miscellaneous bugs and formatting.
Fixed scopes on Encrypting and Hashing traits. Cleaned up unit tests on Juggling trait.
Added some basic usage notes to readme for JugglingModelTrait.
Updated composer keywords.
Added credit to Dayle Rees.
Adds new methods to ValidatingModelTrait - Tests Included

Adds methods to dynamically add/remove rules to either the default $rules or a specified $rulesets[$ruleset_name]
- Methods added
    - `addRules(array $add_rules, $ruleset = null, $merge_with_saving = false)`
    - `removeRules(array $remove_rules_keys, $ruleset = null, $merge_with_saving = false)`
- Tests added
    - `testExistingGetAndSetRules()`
    - `testAddRulesAddsToRules()`
    - `testAddRulesAddsToRuleset()`
    - `testRemoveRulesRemovesFromRules()`
    - `testRemoveRulesRemovesFromRuleset()`