Efficient MVQ generation and related tests.

- Added a static method for efficiently generating dense MVQ polynomial functions.

- Added unit tests for said method and made sure they were passing.

- Moved some common utility functions out of PolynomialFunctionGF2

- Started implementation of initial support for parameterization of the public key.

-
Upgrade to gradle 1.12
Implemented random partitioning for MVQs

Multivariate functions can now be randomly partitioned into two random multivariate quadratic functions. This allows
for creating multiple parallel transformation pipelines that are not linearly related.
Whitespace
Added comments and removed unneeded code
Merge pull request #22 from kryptnostic/feature/function-partitioning

Feature/function partitioning