Optimized NIC rule deletion

Rather than sending one REST delete command per rule
the server driver batches multiple rule IDs into a
single delete command.

Also performed some memory optimizations and refactoring.

Smarter batching to avoid exceeding the memory constraints of
webservers.
Lowered the rule deletion batch size due to the message:
"Your HTTP header was too big for the memory constraints of
this webserver".

Batch size for rule deletion has become a configurable
property.

Change-Id: I3ff7a2a85bfa0c100d25da1ced3c83fad61edaf7
Signed-off-by: Georgios Katsikas <katsikas.gp@gmail.com>
diff --git a/drivers/server/src/main/resources/server-drivers.xml b/drivers/server/src/main/resources/server-drivers.xml
index 9058fa1..11c75d1 100644
--- a/drivers/server/src/main/resources/server-drivers.xml
+++ b/drivers/server/src/main/resources/server-drivers.xml
@@ -36,6 +36,7 @@
 
         <behaviour api="org.onosproject.net.flow.FlowRuleProgrammable"
                    impl="org.onosproject.drivers.server.FlowRuleProgrammableServerImpl"/>
+        <property name="ruleDeleteBatchSize">500</property>
     </driver>
 </drivers>