Add BlockFace and basic Block methods

Added BlockFace class
Added basic Block methods that will be needed regardless of how the
rest of the API works
The block faces should have unit vector3i s for the directions they point to, to give them a mathematical definition

Also the equivalent of Block in Bukkit is Voxel in Sponge. In this API a Block is a singleton used for logic

> On Sep 12, 2014, at 10:18 PM, Matthew Messinger <notifications@github.com> wrote:
> 
> In src/main/java/org/spongepowered/api/block/BlockFace.java:
> 
> > +    }
> > +
> > +    /**
> > +     * Gets the change in Z value from current Voxel.
> > +     * @return modZ
> > +     */
> > +    public int getModZ() {
> > +        return modZ;
> > +    }
> > +
> > +    /**
> > +     * Calculates the opposite BlockFace from the current BlockFace.
> > +     * @return The opposite BlockFace
> > +     */
> > +    public BlockFace getOppositeFace() {
> > +        switch (this) {
> Could there be a way to do this mathematically?
> 
> —
> Reply to this email directly or view it on GitHub.