New types of pins for a spark

Spark pins can be defined as input or output - this means that input can be gathered fro msparks now - but, analog doesn't work by default yet.
Validation of spark id

Spark id's are checked to make sure they contain 24 characters, and unless this is true the user cannot continue in setting up a spark