initial commit for ABTest

- API (draft)
- SPI (draft)
Merge pull request #24 from unidal/abtest

initial commit for ABTest
integrate group strategy into context manager
Merge pull request #25 from unidal/abtest

integrate group strategy into context manager
define data model
Merge pull request #29 from unidal/abtest

define data model
完成：从abtest.xml读取entity，初始化DefaultABTestEntityManager; DefaultABTestEntityManager的UT。
Merge pull request #30 from atellwu/master

完成从abtest.xml读取entity，初始化DefaultABTestEntityManager; 完成DefaultABTestEntityManager的UT
Initial ABTest Demo

RoundRobin ABTest Group Strategy demo
Intergrate with abtest model

与克祝的从xml读取model信息整合并修改了merge conflict。
Merge pull request #31 from ainilife/master

ABTest Demo Initial
Refactor the code
Merge pull request #33 from ainilife/master

Refactor the code
ABTest Home initial commit
Merge pull request #34 from ainilife/master

ABTest Home initial commit
revise the JettyServer
DefaultABTestContextManager添加getContexts()方法，返回当前所有context，后续给Cat.logMetri使用。
 Make sure GroupName is calculated
去掉多余的this；ABTestEntity的GroupStrategy为null时自动创建默认值
老吴写的代码的提交：ctx.getGroupName()改为调用ctx.initialize(),且优化了DefaultABTestContext的懒初始化方法。